Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
59
Добавлен:
10.05.2014
Размер:
1.38 Кб
Скачать
program Factorial;
procedure InputN(var n:byte);
begin
write('‚ўҐ¤ЁвҐ зЁб«® N, ¤«п Є®в®а®Ј® бзЁв Ґвбп д Єв®аЁ « (N!): ');
readln(n);
end;
function FactorialCycle(n:byte):longint;
var
i:byte;
Factorial:longint;
begin
Factorial:=1;
for i:=1 to n do
Factorial:=Factorial*I;
FactorialCycle:=Factorial;
end;
function FactorialRecursive(n:byte):longint;
begin
if n=1 then
FactorialRecursive:=1
else
FactorialRecursive:=n*FactorialRecursive(n-1);
end;
procedure ComputeFactorials(var FactorialC,FactorialR:longint;n:byte);
begin
if n>0 then
begin
FactorialC:=FactorialCycle(n);
FactorialR:=FactorialRecursive(n);
end;
if n=0 then
begin
FactorialC:=1;
FactorialR:=1;
end;
end;
procedure OutputFactorials(FactorialC,FactorialR:longint;n:byte);
begin
if (FactorialC<>0) and (FactorialR<>0) then
begin
writeln('–ЁЄ«®¬ ',n,'!=',FactorialC);
writeln('ђҐЄгабЁў­® ',n,'!=',FactorialR);
end
else
begin
writeln('” Єв®аЁ « ўўҐ¤Ґ­­®Ј® зЁб«  ­Ґ ®ЇаҐ¤Ґ«Ґ­ Ё«Ё б«ЁиЄ®¬ Ў®«ми®©!');
end;
readln;
end;
var
n:byte;
FactorialC,FactorialR:longint;
begin
InputN(n);{ўў®¤ зЁб« , ¤«п Є®в®а®Ј® бзЁв Ґвбп д Єв®аЁ «}
ComputeFactorials(FactorialC,FactorialR,n);{а ббзҐв д Єв®аЁ « }
OutputFactorials(FactorialC,FactorialR,n);{ўлў®¤ д Єв®аЁ «  ­  нЄа ­}
end.
Соседние файлы в папке 03