function f(n:integer):real; var p:real; i:integer; begin p:=1; for i:=1 to n do p:=p*i; f:=p end;
var x,y,z:integer;
begin Write('Введите x,y,z через пробел: '); Read(x,y,z); Writeln((f(x)+f(y))*f(z)) end.
Примеры Введите x,y,z через пробел: 8 12 5 57485030400
Введите x,y,z через пробел: 23 15 41 8.64815278005251E+71
2. Современное решение
// PascalABC.NET 3.3, сборка 1625 от 17.01.2018 // Внимание! Если программа не работает, обновите версию!
begin var f:integer->BigIinteger:=n->1.To(n).Aggregate(BigInteger(1),(x,y)->x*y); var (x,y,z):=ReadInteger3('Введите x,y,z через пробел:'); Writeln((f(x)+f(y))*f(z)) end.
Примеры Введите x,y,z через пробел: 8 12 5 57485030400
Введите x,y,z через пробел: 23 15 41 864815278005250908694716268480895614135710289321049211273216000000000000
объяться,объять,объятый