În matematică factorialul unui număr întreg n este notat cu n! și este egal cu produsul numerelor naturale mai mici sau egale cu n.
Exemple:
5 ! = 5 × 4 × 3 × 2 × 1 = 120
0 ! = 1 (caz special)
Factorialul unui număr oarecare n indică numărul de permutări (numărul de posibilități de rearanjare) ale unei mulțimi finite având n elemente.
Funcția factorial este definită de:
sau, recursiv, de:
Implementare:
#include "stdafx.h" #include<iostream> using namespace std; int factorial(int); void main(void) { int number; cout << "Va rugam sa introduceti un numar intreg pozitiv: "; cin >> number; if (number < 0) cout << "Acest numar nu este intreg pozitiv.\n"; else cout << number << " factorial este: " << factorial(number) << endl; system("pause"); } int factorial(int number) { int temp; if (number <= 1) return 1; temp = number * factorial(number - 1); return temp; }
fact :: Integer->Integer
fact 0 = 1
fact n = n*(fact(n-1))
Rezultat