Автор | Сообщение |
|
Отправлено: 29.12.22 22:34. Заголовок: задание 16 номер 27
Здравствуйте. Помогите, пожалуйста, найти ошибку. Судя по ответу, моя программа делает еще одну лишнюю итерацию. Просто на сайте ответ на задание 27: 30 1249317. Мой ответ: 31 1185029 Моя программа: def f(n): if n<=1: return n+1 if n>1: return 2*n +f(n-1)+f(n-3) for n in range (0, 1000): s=f(n) if s>1_000_000: break print (n, s)
|
|
|
Ответов - 1
[только новые]
|
|
|
Отправлено: 05.01.23 14:34. Заголовок: Агаркова пишет: def..
Агаркова пишет: цитата: | def f(n): if n<=1: return n+1 if n>1: return 2*n +f(n-1)+f(n-3) for n in range (0, 1000): s=f(n) if s>1_000_000: break print (n, s) |
| попробуйте как то так: def F( n ): global s s=s + n+1 if n > 1: s = s + 2*n F(n-1) F(n-3) return s for n in range(1,200): s = 0 F(n) if s>1000000: print('n=',n,'s=',s) break
|
|
|