Рекурсия N раз вывести на экран текст истории о попе и его собаке - Pascal ABC

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

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

Рекурсия Напишите рекурсивную программу которая n раз выводит на экран текст истории о попе и его собаке (рассказ в рассказе)

Решение задачи: «Рекурсия N раз вывести на экран текст истории о попе и его собаке»

textual
Листинг программы
  1. procedure PriestAndDog(n:integer);
  2. begin
  3. writeln('У попа была собака, он ее любил.');
  4. writeln('Она съела кусок мяса, он ее убил,');
  5. writeln('вырыл яму, закопал и на камне написал:');
  6. if n>1 then PriestAndDog(n-1);
  7. end;
  8. var n:integer;
  9. begin
  10. write('n=');
  11. readln(n);
  12. PriestAndDog(n);
  13. end.

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

  1. В процедуре PriestAndDog(n) переменная n представляет собой целое число, которое указывает на количество раз, которое нужно вывести историю о попе и его собаке на экран.
  2. Код начинается с вызова процедуры PriestAndDog(n), где n еще не определено.
  3. Затем идет строка кода writeln('У попа была собака, он ее любил.'), которая выводит на экран первую часть истории.
  4. Далее идет строка кода writeln('Она съела кусок мяса, он ее убил,'), которая выводит на экран вторую часть истории.
  5. После этого идет строка кода writeln('вырыл яму, закопал и на камне написал:'), которая выводит на экран третью часть истории.
  6. Затем идет условное выражение if n>1 then PriestAndDog(n-1), которое проверяет, больше ли значение переменной n единицы. Если это так, то вызывается процедура PriestAndDog с аргументом n-1, что означает, что история будет повторена еще n-1 раз.
  7. Код заканчивается вызовом процедуры PriestAndDog(n), где n уже определено пользователем.

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


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

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

9   голосов , оценка 4.444 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы