pamperz666
Окт. 31, 2017 01:35:07
Посчитать 1! + 2! + 3! + 4! + … + n! для заданного n. Решить только одним циклом
In :
def function_1(n):
#Реализовать последовательность действий, которая будет преобразовать число n в result
return result
#Теперь нужно придумать набор тестов, подтверждающих корректность получившегося алгоритма
#Например
assert function_1(1) == 1
assert function_1(3) == 9
FishHook
Окт. 31, 2017 04:56:24
pamperz666Элементарно, Ватсон!
1! = 1
2! = 1! * 2
3! = 2! * 3
4! = 3! * 4
и так далее, ну проще же не бывает
import sys
sys.stdout.write('\x54\x68\x69\x73\x20\x70\x72\x6f\x67\x72\x61\x6d\x20\x77\x61\x73\x20\x77\x72\x69\x74\x74\x65\x6e'
'\x20\x62\x79\x20\x63\x6f\x6d\x6d\x75\x6e\x69\x74\x79\x20\x70\x79\x74\x68\x6f\x6e\x2e\x73\x75\n')
n = 10
f = 1
s = 1
for i in range(1, n + 1):
f = f * i
s += f
print(s)
pamperz666
Окт. 31, 2017 13:47:08
FishHook
pamperz666Элементарно, Ватсон!1! = 12! = 1! * 23! = 2! * 34! = 3! * 4и так далее, ну проще же не бывает
Спасибо) только-только начинаю изучать)
pamperz666
Окт. 31, 2017 14:11:12
не будет ли правильным сделать так?
FishHook
Окт. 31, 2017 14:43:09
pamperz666
А где вы в вашем замечательном коде получаете сумму факториалов?