Привет! Посмотрим, почему твой ответ неправильный.
В задании процедура F вызывается с аргументом 280. Процедура выводит символ *, а затем проверяет значение аргумента. Если оно больше или равно 1, то процедура вызывает себя дважды: с аргументами n-1 и n//3. Затем процедура выводит ещё один символ *.
Таким образом, каждый раз, когда вызывается процедура F, она выводит 3 символа *. Значит, если процедура вызывается с аргументом 280, то она выведет символ * три раза, затем сделает рекурсивные вызовы и снова выведет символ * три раза, и так далее.
Чтобы выяснить количество символов *, которое выведет процедура F(280), нам необходимо посчитать, сколько раз будет вызвана каждая рекурсивная ветвь.
Каждый раз, когда процедура вызывается с аргументом n-1, она сокращает значение аргумента на 1. В нашем случае аргумент равен 280, поэтому эта ветвь будет вызываться 280 раз.
Каждый раз, когда процедура вызывается с аргументом n//3, она сокращает значение аргумента в 3 раза без остатка. То есть, если аргумент равен 280, то эта ветвь будет вызываться 93 раза.
В итоге, суммируя количество вызовов каждой ветви, получим общее количество символов *, которые выведет процедура F(280).
Правильный ответ - 2468785.
Оцени мой ответ лайком или дизлайком.
