Дано натуральное число. Напечатать это число русскими словами.(Паскаль)
vladik1603:
До какого числа нужно?
Ответы на вопрос
Ответил mozar285
0
Программа выглядит примерно так
program n_1; type nazw = array[0..9] of String[15]; const ed : nazw = ('ноль','один','два','три','четыре','пять','шесть','семь','восемь','девять'); des: nazw = ('','десять','двадцать','тридцать','сорок','пятьдесят', 'шестьдесят','семьдесят','восемьдесят','девяносто'); sot: nazw = ('','сто','двести','тристо','четыресто','пятьсот','шестьсот','семьсот','восемьсот','девятьсот'); dd : nazw = ('','одинадцать','двенадцать','тринадцать','четырнадцать','пятнадцать', 'шестнадцать','семнадцать','восемьнадцать','девятнадцать'); var s,d,e,x : Integer; st : String; Begin Write('Введите число [0..1000] :'); Readln(x); if x=1000 then st:='тысяча' else begin s:= x div 100; x:=x mod 100; st:=sot[s]; d:= x div 10; e:=x mod 10; if (d=1) and (e<>0) then st:=st+dd[e] else st:=st+des[d]+ed[e]; end; writeln(st); End.
program n_1; type nazw = array[0..9] of String[15]; const ed : nazw = ('ноль','один','два','три','четыре','пять','шесть','семь','восемь','девять'); des: nazw = ('','десять','двадцать','тридцать','сорок','пятьдесят', 'шестьдесят','семьдесят','восемьдесят','девяносто'); sot: nazw = ('','сто','двести','тристо','четыресто','пятьсот','шестьсот','семьсот','восемьсот','девятьсот'); dd : nazw = ('','одинадцать','двенадцать','тринадцать','четырнадцать','пятнадцать', 'шестнадцать','семнадцать','восемьнадцать','девятнадцать'); var s,d,e,x : Integer; st : String; Begin Write('Введите число [0..1000] :'); Readln(x); if x=1000 then st:='тысяча' else begin s:= x div 100; x:=x mod 100; st:=sot[s]; d:= x div 10; e:=x mod 10; if (d=1) and (e<>0) then st:=st+dd[e] else st:=st+des[d]+ed[e]; end; writeln(st); End.
Новые вопросы