Главная » Статьи » Задачи по программированию

Факториал [Pascal]
[Pascal]Факториалом числа n называется произведение чисел от 1 до n включительно:
n!=1*2*3...n
Кроме того, принимается, что 0! = 1. 
Факториал определяется еще и таким образом:

Это рекурсивное определение. Опираясь на него, легко написать рекурсивную функцию:

  function f (n:integer):integer;
  (* факториал числа n *)
  Begin
  if n=0 then f:= 1
  else f:=n*f(n-1);
  end.

Факториал можно вычислить и посредством нерекурсивной функции. Она могла бы выглядеть так:

  function f (n:integer):integer;
  (* факториал числа n *)
  var
  ff, i:integer;
  Begin
  for i:= 1 to n do
  ff:=i*ff;
  f:=ff;
  end;

Эту функцию мы включим в программу, которая печаетает первые десять натуральных чисел и их факториалы!
Код
var r:integer;
  function f(n:integer):integer;
  var ff,i:integer;
  begin
  ff:=1;
  for i:=1 to n do
  ff:=i*ff;
  f:=ff;
  end;
  begin
  for r:=1 to 10 do
  Writeln(r,' ---> ',f(r));
  Readln;
  end.
  

  
Выполнив данную программу, компьютор напечатает такие результаты:


Надеемся задача была интересной и вы нашли для себя
что то новое. Оставляйте комментарии, задавайте любые интересующие вас вопросы. 



Спасибо что посетили наш сайт. 

С уважением администрация сайта Solution.3dn.ru

Категория: Задачи по программированию | Добавил: shypuk (29.09.2013)
Просмотров: 3542 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]