Предмет: Информатика,
автор: sellsaccount
Задача: Факториал числа представляет собой произведение всех натуральных чисел от 1 до этого числа включительно.
Например, факториал числа 7 выглядит так:
1 * 2 * 3 * 4 * 5 * 6 * 7
Факториал числа обозначается как само число после которого следует восклицательный знак.
Например, 7!. Таким образом:
7! = 1 * 2 * 3 * 4 * 5 * 6 * 7 = 5040
Требуется определить факториал числа, которое ввел пользователь.
Ответы
Автор ответа:
1
1)readln(n);
if (n=0) then writeln('0!=1') else
if (n<0) then writeln('Определяется только для положительных чисел') else
begin
s:=1;
for i:=1 to n do
s:=s*i;
writeln(n,'!='s:0:0);
end;
2)function f(x:byte):real;
begin
if x=0 then f:=1
else f:=f(x-1)*x;
end;2
с помощью рекурсии, как видно
if (n=0) then writeln('0!=1') else
if (n<0) then writeln('Определяется только для положительных чисел') else
begin
s:=1;
for i:=1 to n do
s:=s*i;
writeln(n,'!='s:0:0);
end;
2)function f(x:byte):real;
begin
if x=0 then f:=1
else f:=f(x-1)*x;
end;2
с помощью рекурсии, как видно
Автор ответа:
0
uses crt;var f:real;
x,n:integer;
begin
f:=1;
write('N='); readln(N);
if N<0 then writeln('EROOR!') else
if N=0 then writeln('N!=',1)
else begin
for x:=2 to N do
f:=f*x;
writeln('N!=',f); end;
end.
----
Влазят только числа, не превышающие 170.
x,n:integer;
begin
f:=1;
write('N='); readln(N);
if N<0 then writeln('EROOR!') else
if N=0 then writeln('N!=',1)
else begin
for x:=2 to N do
f:=f*x;
writeln('N!=',f); end;
end.
----
Влазят только числа, не превышающие 170.
Похожие вопросы
Предмет: Информатика,
автор: peachpeach705
Предмет: Химия,
автор: mirovalovalyubp4wyrq
Предмет: Физика,
автор: privat34
Предмет: Геометрия,
автор: НикиткаНикитос