Я писала для n<=10000. Измените для своих данных.<br> Uses Crt;
var n:integer;
s1,s2,s3,s4,s5:string;
begin
ClrScr;
writeln('введите натуральное число (n<=10000)');<br> readln(n);
if n>10000 then
begin
writeln('неверный ввод');
readln;
exit;
end;
{пятая цифра}
case n mod 10 of
1: s5:='один';
2: s5:='два';
3: s5:='три';
4: s5:='четыре';
5: s5:='пять';
6: s5:='шесть';
7: s5:='семь';
8: s5:='восемь';
9: s5:='девять';
end;
{четвертая цифра}
if n div 10 mod 10=1 then
{четвертая цифра - 1}
begin
s4:='';
case n mod 10 of
0: s5:='десять';
1: s5:='одиннадцать';
2: s5:='двенадцать';
3: s5:='тринадцать';
4: s5:='четырнадцать';
5: s5:='пятнадцать';
6: s5:='шестнадцать';
7: s5:='семнадцать';
8: s5:='восемнадцать';
9: s5:='девятнадцать';
end;
end
else
{четвертая цифра не равна 1}
case n div 10 mod 10 of
2: s4:='двадцать';
3: s4:='тридцать';
4: s4:='сорок';
5: s4:='пятьдесят';
6: s4:='шестьдесят';
7: s4:='семьдесят';
8: s4:='восемьдесят';
9: s4:='девяносто';
end;
{третья цифра}
if n div 100 mod 10=0 then s3:=''
else
case n div 100 mod 10 of
1: s3:='сто';
2: s3:='двести';
3: s3:='триста';
4: s3:='четыреста';
5: s3:='пятьсот';
6: s3:='шестьсот';
7: s3:='семьсот';
8: s3:='восемьсот';
9: s3:='девятьсот';
end;
{вторая цифра}
if n div 1000 mod 10=0 then s2:=''
else
case n div 1000 mod 10 of
1: s2:='одна тысяча';
2: s2:='две тысячи';
3: s2:='три тысячи';
4: s2:='четыре тысячи';
5: s2:='пять тысяч';
6: s2:='шесть тысяч';
7: s2:='семь тысяч';
8: s2:='восемь тысяч';
9: s2:='девять тысяч';
end;
if n div 10000 =1 then s1:='десять тысяч'
else s1:='';
writeln(s1,' ',s2,' ',s3,' ',s4,' ',s5);
readln
end.