Напечатать число русскими словами - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

дано натуральное число n(n<=1000). напечатать это число русскими словами.(например: двести сорок один)

Решение задачи: «Напечатать число русскими словами»

textual
Листинг программы
  uses TpCrt;
  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);
    readln;
  End.

Объяснение кода листинга программы

  1. В начале кода объявляются необходимые переменные и типы данных.
  2. Затем идет использование переменной x для чтения числа от пользователя.
  3. Далее происходит проверка, если введенное число равно 1000, то переменной st присваивается значение тысяча. В противном случае, происходит деление числа на 100 и его остаток на 100, после чего присваивается значения переменным s и d.
  4. Затем происходит деление числа на 10 и его остаток на 10, после чего присваивается значения переменным e и d.
  5. Если остаток от деления на 10 равен 1, а остаток от деления на 100 не равен 0, то к переменной st добавляется значение из массива dd с помощью индекса e.
  6. В противном случае, к переменной st добавляются значения из массивов sot, des и ed с использованием соответствующих индексов s, d и e.
  7. Наконец, выводится значение переменной st, которая содержит результат преобразования числа в слова на русском языке.
  8. Конец программы.

Оцени полезность:

6   голосов , оценка 4 из 5
Похожие ответы