Автор | Сообщение |
|
Отправлено: 16.11.22 17:37. Заголовок: Задача номер 5538
# variant 1 n=1 for i in range(1,3516+1): n*=(2*i-1)*i m=1 for i in range(1,3513+1): m*=(2*i-1)*i print(n//m) # variant 2 nn=1 for i in range(3514,3516+1): nn*=(2*i-1)*i print(nn) получается 15081917044835131694280 в обоих вариантах подскажите в чем заблуждаюсь?((
|
|
|
Ответов - 1
[только новые]
|
|
|
Отправлено: 29.12.22 13:40. Заголовок: У вас неверное выраж..
У вас неверное выражение n*=(2*i-1)*i В задании выражение выглядит так F(n) = (2·n - 1)·F(n – 1), если n > 1. F(n – 1) это предыдущее значение, а у Вас текущее при i=2, правильная программа должна вывести 3(можно устно посчитать), а у вас другое число получается 6 попробуйте так a=[0,1] for n in range(2, 4000): #print(i) if n >1: a.append( (2*n-1)*a[n-1]) print(a[3516]/a[3513],a[2],a[3])
|
|
|