Ввести возраст человека (от 1 до 150 лет) и вывести его вместе с последующим словом "год", "года" или "лет" - Pascal ABC

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

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

Здравствуйте! Помогите решить задачу! Ввести возраст человека (

от 1 до 150 лет

) и вывести его вместе с последующим словом «год», «года» или «лет». Пример: Введите возраст: 24 Вам 24 года Проблему составляет исключение - 111(по идее 11 лет, но получается год) - не получается всунуть в алгоритм. Мозги уже кипят.

Решение задачи: «Ввести возраст человека (от 1 до 150 лет) и вывести его вместе с последующим словом "год", "года" или "лет"»

textual
Листинг программы
var
  year : integer;
  strEnd : string;
 
begin
  repeat
    write('Введите ваш возраст (от 1 до 150 лет): ');
    readln(year);
  until (year <= 150) and (year > 0);
 
  {обработка исключении 11 12 13 14}
  if ((year mod 100)>=11) and ((year mod 100)<=14) then
      strEnd := 'лет'
  else
    case (year mod 10) of
     1: strEnd := 'год';
     2..4: strEnd := 'года';
    else
     strEnd := 'лет';
    end;
  WriteLn('Вам ',year,' ',strEnd);
  
end.

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

  1. Переменная year предназначена для хранения введенного пользователем возраста.
  2. Переменная strEnd используется для хранения конечной части строки, которая добавляется к числу в зависимости от того, какие цифры содержит число.
  3. Цикл repeat используется для повторного запроса возраста, пока не будет введено корректное значение (не меньше 1 и не больше 150).
  4. В блоке if проверяется, соответствует ли введенный возраст диапазону от 11 до 14. Если это так, то переменной strEnd присваивается значение 'лет'. В противном случае, используется одно из трех значений в зависимости от последней цифры года.
  5. В блоке WriteLn выводится сообщение с введенным возрастом и окончанием строки.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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