Форум сайта python.su
Посчитать 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
Офлайн
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)
Отредактировано FishHook (Окт. 31, 2017 04:58:07)
Офлайн
FishHookСпасибо) только-только начинаю изучать)
pamperz666Элементарно, Ватсон!1! = 12! = 1! * 23! = 2! * 34! = 3! * 4и так далее, ну проще же не бывает
Офлайн
не будет ли правильным сделать так?
Прикреплённый файлы: Untitled3-Copy1.py (176 байт)
Офлайн
pamperz666
А где вы в вашем замечательном коде получаете сумму факториалов?
Офлайн