#algorithms



Вычисление факториала может быть решено двумя способами: рекурсивно и нерекурсивно. Мы рассмотрим два этих способа:



1. Рекурсивно:

 long int fact(unsigned long int f)

{

int i;

unsigned long int result;

if (f == 1 || f == 0)

return 1;

cout << "Шаг\t" << i << endl;

i++;

cout << "Результат: " << result << endl;

result = f * fact(f - 1);

return result;

}




2. Нерекурсивно:

 fact(int n)

{

int i, f;

f == 1;

for (i = 1; i <=n; i++) {

f = f*i;

}

return f;

}