Рекурсивный алгоритм F для удобства записан на пяти языках программирования.
Чему равна сумма всех чисел, на экране при выполнении вызова F(1)?
Приложения:
BlackHole3003:
1 вроде
а нет
Ответы
Ответ дал:
0
Відповідь:
a = 0
def F(n):
global a
print(n)
a += n
if n < 4:
F(n + 1)
F(n + 3)
F(1)
print(a)
1, 2, 3, 4, 6, 5, 4
Сумма данных чисел составляет: 25
Пояснення:
Спасибо! А почему алгоритм выведет именно эти числа?
F(n + 1)
F(n + 3)
Эти штуки перевызивают вашу функцию.
Максимальное число данная функция выведет 6 если вы укажите при ее вызове 1 т.к после проверки n < 4 вызываетса два раза подряд ваша функция первая делает число которое вы передали на 1 больше другая на 3 больше. И оно будет работать пока проверка говорит все хорошо. Если n > 4 проверка неработает. Функция заканчивает работу.
F(n + 3)
Эти штуки перевызивают вашу функцию.
Максимальное число данная функция выведет 6 если вы укажите при ее вызове 1 т.к после проверки n < 4 вызываетса два раза подряд ваша функция первая делает число которое вы передали на 1 больше другая на 3 больше. И оно будет работать пока проверка говорит все хорошо. Если n > 4 проверка неработает. Функция заканчивает работу.
Тут не сложно догадаться что делает код. Если вы конечно програмист.
Вас заинтересует
2 года назад
2 года назад
2 года назад
8 лет назад
8 лет назад
9 лет назад