Настя12611
16.09.2020 15:47

Pascal Решите

procedure F(n: integer);

begin

write(n);

if n >= 3 then

begin

F(n div 2);

F(n - 1)

end

end;

Запишите подряд без пробелов и разделителей все числа, которые будут

выведены на экран при выполнении вызоваF(5). Числа должны быть

записаны в том же порядке, в котором они выводятся на экран

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
рай34
15.01.2024 21:04
Для решения этой задачи, шаг за шагом выполним кодовое решение:

1. Вызываем процедуру F(5).
2. Выводим на экран число 5.
3. Проверяем, является ли 5 больше или равным 3. Это условие истинно, поэтому выполняем следующий код внутри блока begin...end.
4. Вызываем процедуру F(5 div 2), что равно F(2).
5. Выводим на экран число 2.
6. Проверяем, является ли 2 больше или равным 3. Это условие ложно, поэтому не выполняем следующий код внутри блока begin...end.
7. Выходим из процедуры F(2) и возвращаемся к вызывающей процедуре, т.е. к процедуре F(5).
8. Вызываем процедуру F(5 - 1), что равно F(4).
9. Выводим на экран число 4.
10. Проверяем, является ли 4 больше или равным 3. Это условие истинно, поэтому выполняем следующий код внутри блока begin...end.
11. Вызываем процедуру F(4 div 2), что равно F(2).
12. Выводим на экран число 2.
13. Проверяем, является ли 2 больше или равным 3. Это условие ложно, поэтому не выполняем следующий код внутри блока begin...end.
14. Выходим из процедуры F(2) и возвращаемся к вызывающей процедуре, т.е. к процедуре F(4).
15. Вызываем процедуру F(4 - 1), что равно F(3).
16. Выводим на экран число 3.
17. Проверяем, является ли 3 больше или равным 3. Это условие истинно, поэтому выполняем следующий код внутри блока begin...end.
18. Вызываем процедуру F(3 div 2), что равно F(1).
19. Выводим на экран число 1.
20. Проверяем, является ли 1 больше или равным 3. Это условие ложно, поэтому не выполняем следующий код внутри блока begin...end.
21. Выходим из процедуры F(1) и возвращаемся к вызывающей процедуре, т.е. к процедуре F(3).
22. Возвращаемся к вызывающей процедуре, т.е. к процедуре F(4).
23. Возвращаемся к вызывающей процедуре, т.е. к процедуре F(5).
24. Весь код выполнен, завершаем выполнение программы.

Таким образом, при выполнении вызова F(5) на экран будет выведена последовательность чисел: 5 2 4 2 3 1.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота