• записать программу выведения натурального числа N (<=n<=9999) в его словесной записи.
    Например n=2345 - две тысячи триста пятдесят четыре

Ответы 1

  • Я писала для n<=10000. Измените для своих данных. Uses Crt;  var n:integer;      s1,s2,s3,s4,s5:string;begin  ClrScr;  writeln('введите натуральное число (n<=10000)');  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);  readlnend.
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years