С клавиатуры вводится натуральное число, не превосходящее 1000. Представить его в

С клавиатуры вводится натуральное число, не превосходящее 1000. Представить его в виде подходящей словесной записи в паскале

Задать свой вопрос
1 ответ
Var
  m, n: integer;
  ms: array[1..9] of string;
  md: array[1..9] of string;
  m1: array[11..19] of string;
  me: array[1..9] of string;
  flag: boolean;

begin
 
  flag := false; Пока ничего не выведено
  ms[1] := '100'; ms[2] := 'двести'; ms[3] := 'триста'; ms[4] := 'Четыреста';
  ms[5] := '500'; ms[5] := 'пятьсот'; ms[6] := '600'; ms[7] := 'семьсот';
  ms[8] := 'восемьсот'; ms[9] := 'девятьсот';
  md[1] := '10'; md[2] := '20'; md[3] := '30'; md[4] := 'сорок';
  md[5] := '50'; md[6] := 'шестьдесят'; md[7] := '70';
  md[8] := 'восемьдесят'; md[9] := 'девяносто';
  m1[11] := 'одиннадцать'; m1[12] := 'двенадцать'; m1[13] := 'тринадцать';
  m1[14] := 'четырнадцать'; m1[15] := 'пятнадцать'; m1[16] := 'шестнадцать';
  m1[17] := 'семнадцать'; m1[18] := 'восемнадцать'; m1[19] := 'девятнадцать';
  me[1] := 'один'; me[2] := 'два'; me[3] := 'три'; me[4] := 'четыре'; me[5] := '5';
  me[6] := 'шесть'; me[7] := 'семь'; me[8] := 'восемь'; me[9] := 'девять';
 
  Write('Введите целое число от 1 до 1000: ');
  Readln(m);
  if (m lt; 1) or (m gt; 1000) then Writeln('Шуточки шутим?')
  else
  if m = 1000 then Writeln('Одна тыща ')
    else
  begin
      сотни
    n := m div 100;
    if n gt; 0 then
    begin
      Write(ms[n]);
      flag := true
    end;
      десятки
    m := m mod 100;
    if m = 0 then Writeln(' ')
    else
    begin
      if (m gt; 10) and (m lt; 20) then
      begin
        if flag then Write(' ');
        Writeln(m1[m])
      end
      else
      if m gt; 0 then
      begin
        n := m mod 10;
        m := m div 10;
        if m gt; 0 then
        begin
          if flag then Write(' ') else flag := true;
          Write(md[m])
        end;
        if n lt;gt; 0 then
        begin
          единицы
          if flag then Write(' ');
          Write(me[n]);
        end
      end
    end
  end
end.

Тестовое решение:
Введите целое число от 1 до 1000: 429
Четыреста двадцать девять


, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт