Дано целое число в диапазоне 100–999. Вывести строку-описание данного числа, например: 256 — «двести пятьдесят шесть», 814 — «восемьсот четырнадцать»

code: #pascal
Program Case18;
var
N:integer;
temp,cout:integer;
s:String;
begin
repeat
write('Введите число:');
readln(N);
until (N>100)and(N<999);
temp:=N div 100;
case temp of
1:s:='сто ';
2:s:='двести ';
3:s:='триста ';
4:s:='четыреста ';
5:s:='пятьсот ';
6:s:='шестьсот ';
7:s:='семьсот ';
8:s:='восемьсот ';
9:s:='девятьсот ';
end;
if (((N mod 100)>9)and((N mod 100)<20))then
begin
case (N mod 100)of
10: s:=s+'десять' ; 
11: s:=s+ 'одинадцать '; 
12: s:=s+'двенадцать '; 
13: s:=s+'тринадцать '; 
14: s:=s+'четырнадцать '; 
15: s:=s+'пятнадцать '; 
16: s:=s+'шестнадцать '; 
17: s:=s+'семнадцать '; 
18: s:=s+'восемнадцать '; 
19: s:=s+'девятнадцать '; 
end;
end
else
begin
case ((N mod 100) div 10) of
2: s:=s+'двадцать ';
3: s:=s+'тридцать '; 
4: s:=s+'сорок '; 
5: s:=s+'пятьдесят '; 
6: s:=s+'шестьдесят '; 
7: s:=s+'семьдесят '; 
8: s:=s+'восемьдесят '; 
9: s:=s+'девяносто '; 
end;
case((N mod 100) mod 10)of
1: s:=s+'один'; 
2: s:=s+'два'; 
3: s:=s+'три'; 
4: s:=s+'четыре'; 
5: s:=s+'пять'; 
6: s:=s+'шесть'; 
7: s:=s+'семь'; 
8: s:=s+'восемь'; 
9: s:=s+'девять'; 
end;
end;
writeln(s);
end.

автор: Zakirov Nail a.k.a. Zevsnet

Поделиться:

Похожие статьи: