Предмет: Информатика,
автор: polyaaak
Вычислить 1*2*3*…(n-1)*n ( n вводится с клавиатуры)
Нужно программу написать
Ответы
Автор ответа:
1
#Python
def f(n): return 1 if n==1 else n*f(n-1)
print(f(int(input())))
def f(n): return 1 if n==1 else n*f(n-1)
print(f(int(input())))
Аноним:
а BigInteger сколько занимает?
Пакуется по две цифры в байт
Т.е. это строка. А у строк лимит 2 Гб
а зачем так?
а, ясно
А как надо? Так решила Microsoft в .NET Framework )))
я думал, как с обычными)
Нет, длинные - там двоично-десятичная арифметика.
На самом деле язык очень удачно сделан. Если на плечах есть голова - легко осваивается за считанные дни.
Да и то, если не знать современных концепций и работы в .NET с контейнерами и прочим, не понимать лямбд... в общем, практически с нуля. А так - еще быстрее.
Автор ответа:
1
PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018
Внимание! Если программа не работает, обновите версию!
begin
1.To(ReadInteger).Aggregate(BigInteger(1),(a,b)->a*b).Print
end.
Пример
217
2174434113582705391286180135953604532547074113841280120966134941338127751629996882750252826548685075220319214067349484135380654467787270451742678423326570265620157366737288992163349171048688798463267664859364875790185551813894632412980205208366671935782165194373264746274299962531422140746241331327245578338344158437780432087037897823778356347516601795918870609920000000000000000000000000000000000000000000000000000
Похожие вопросы
Предмет: Қазақ тiлi,
автор: starhomanastasiya
Предмет: Математика,
автор: alinakalaman0
Предмет: Английский язык,
автор: Ev86912
Предмет: Математика,
автор: кристина18282