begin
clrscr;
write('wwedite chislo: ');
readln(n);
while n>0 do
begin
inc(j);
k:=i;
i:=n mod 10;
n:=n div 10;
case j of
1: case i of
1..9: st:=a[i]+st;
end;
2: case i of
0:;
1: case k of
1..9: begin
st:='';
st:=d[k]+' '+st;
end;
end;
2..9: st:=b[i]+' '+st;
end;
3: case i of
1..9: st:=c[i]+' '+st;
end;
end;
end;
write(st);
readkey;
end.
Вариант 2
program proba;
var i:integer;s,d,e:string;
begin
repeat
write('Vvedite chislo ');
readln(i);
until (i>100) and (i<999);
case i div 100 of
1:s:='sto';
2:s:='dvesti';
3:s:='trista';
4:s:='chetiresta';
5:s:='peatsot';
6:s:='sestsot';
7:s:='semisot';
8:s:='vosemisot';
9:s:='deveatsot';
end;
if (i mod 100 <20) and (i mod 100>=11) then
case i mod 100 of
11:d:='odinadtsati';
12:d:='dvenadtsati';
13:d:='trinadtsati';
14:d:='cetirnadtsati';
15:d:='peatnadtsati';
16:d:='setnadtsati';
17:d:='semnadtsati';
18:d:='vosemnadtsati';
19:d:='deveatnadstati';
end
else
begin
case (i div 10) mod 10 of
2:d:='dvadtsati';
3:d:='tridsati';
4:d:='soroc';
5:d:='peatideseat';
6:d:='sestideseat';
7:d:='semideseat';
8:d:='vosemideseat';
9:d:='deveanosto';
else
d:='deseati';
end;
case i mod 10 of
1:e:='odin';
2:e:='dva';
3:e:='tri';
4:e:='chetire';
5:e:='peati';
6:e:='sesti';
7:e:='semi';
8:e:='vosemi';
9:e:='deveati';
end;
end;
writeln(s,' ',d,' ',e);
readln;
end.