Паскаль. С клавиатуры вводится целое число от 1 до 1000, означающая сумму

Паскаль. С клавиатуры вводится целое число от 1 до 1000, означающая сумму в
рублях. Программа должна напечатать эту сумму прописью.
Пример: пятнадцать рублей.

Задать свой вопрос
1 ответ
Var
  m, n: integer;
  s1, s2, s3: string;
  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; Пока ничего не выведено
  s1 := 'рубль';
  s2 := 'рубля';
  s3 := 'рублей';
  ms[1] := '100'; ms[2] := 'двести'; ms[3] := 'триста'; ms[4] := 'Четыреста';
  ms[5] := '500'; ms[5] := '500'; ms[6] := 'шестьсот'; ms[7] := 'семьсот';
  ms[8] := 'восемьсот'; ms[9] := 'девятьсот';
  md[1] := '10'; md[2] := '20'; md[3] := '30'; md[4] := '40';
  md[5] := 'пятьдесят'; md[6] := 'шестьдесят'; md[7] := 'семьдесят';
  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] := 'пять';
  me[6] := '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('Одна тыща ' + s3)
    else
  begin
      сотки
    n := m div 100;
    if n gt; 0 then
    begin
      Write(ms[n]);
      flag := true
    end;
      10-ки
    m := m mod 100;
    if m = 0 then Writeln(' ', s3)
    else
    begin
      if (m gt; 10) and (m lt; 20) then
      begin
        if flag then Write(' ');
        Writeln(m1[m], ' ', s3)
      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], ' ');
          case n of
            1: Writeln(s1);
            2..4: Writeln(s2);
          else Writeln( s3)
          end
        end
        else Writeln(' ', s3)
      end
    end
  end
end.

Тестовое решение:
Введите целое число от 1 до 1000: 314
триста четырнадцать рублей



Valentina Kuzmicheva
О-го! Вот это ж Для вас спасибо огроменное!
Владимир
А короче не выходит... Можно было чуток процедурами сэкономить.. но и только
Варвара Меликеетова
Да я знаю.) Правдиво разговаривая, просто не веровал, что кому-то будет не лень копаться с таковой большой чужой задачей. Еще раз спасибо!
Вячеслав Юскович
Я особо не возился, просто брал свою, которая в Экселе работает, на VBA написанная, выбросил оттуда тысячи, миллионы и млрд и переписал на Паскаль.
, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость

Физика.

Из точки м выходят 3 луча MP MN и MK причём

Геометрия.

выпиши в свою тетрадь те правила этикета которые тебе не были

Разные вопросы.

Анна хорошо учится у неё много подруг свободное от учёбы время

Обществознание.

10) Килограмм конфет дороже килограмма печенья на 52 р. За 8

Математика.

Во сколько раз число атомов кислорода в земной коре больше числа

Химия.

Составить монолог от имени дневника двоечника 7-10 предложений

Русский язык.

Рассматривая литературный язык как сложное взаимодействие книжного языка и разговорного,В.И.Чернышёв горячо

Разные вопросы.

Арабы входят в __________________ групп народов. Местом расселения арабов с незапамятных

Разные вопросы.

Грузовой автомобиль марки краз за одну поездку может доставить 7.500 кирпичей

Математика.

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

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

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

Войти на сайт