Faktoriál je funkce, jejímž argumentem je přirozené číslo n a výstupem je součin všech čísel menších nebo rovných n (v případě n = 0 je výsledkem 1). Faktoriál čísla n se značí n!.

Příklady

0! = 1
1! = 1
2! = 2 \\cdot 1 = 2
3! = 3 \\cdot 2 \\cdot 1 = 6
4! = 4 \\cdot 3 \\cdot 2 \\cdot 1 = 24
5! = 5 \\cdot 4 \\cdot 3 \\cdot 2 \\cdot 1 = 120
6! = 6 \\cdot 5 \\cdot 4 \\cdot 3 \\cdot 2 \\cdot 1 = 720
7! = 7 \\cdot 6 \\cdot 5 \\cdot 4 \\cdot 3 \\cdot 2 \\cdot 1 = 5040
8! = 8 \\cdot 7 \\cdot 6 \\cdot 5 \\cdot 4 \\cdot 3 \\cdot 2 \\cdot 1 = 40320
9! = 9 \\cdot 8 \\cdot 7 \\cdot 6 \\cdot 5 \\cdot 4 \\cdot 3 \\cdot 2 \\cdot 1 = 362880
10! = 10 \\cdot9 \\cdot 8 \\cdot 7 \\cdot 6 \\cdot 5 \\cdot 4 \\cdot 3 \\cdot 2 \\cdot 1= 3628800

Kód

01./**
02.  * Vypocita faktorial cisla
03.  * @param number cislo >= 0
04.  * @return faktorial cisla
05.  */
06. public static int factorial(int number) {
07.     if (number < 0) throw new IllegalArgumentException("zaporny argument");
08.     int result = 1;
09.     for (int i = number; i > 1; i--) {
10.         result *= i;
11.     }
12.     return result;
13. }
14. /**
15.  * Vypocita rekurzivne faktorial cisla
16.  * @param number cislo >=0
17.  * @return faktorial cisla
18.  */
19. public static int factorialRec(int number) {
20.     if (number < 0) throw new IllegalArgumentException("zaporny argument");
21.     if (number == 0 || number == 1) return 1;
22.     return number * factorialRec(number - 1);
23. }
01./**
02. * Vypocita faktorial vstupniho cisla
03. * @param number Vstupni cislo
04. * @return Faktorial vstupniho cisla
05. * @author Thomas (www.adamjak.net)
06. */
07.int fakt(int number) {
08.    if (number < 0)
09.    {
10.        return 0;
11.    }
12. 
13.    int i, result = 1;
14. 
15.    for (i = number; i > 1; i--)
16.    {
17.        result *= i;
18.    }
19.    return result;
20.}
21. 
22./**
23. * Vypocita faktorial vstupniho cisla rekurzivni formou algoritmu
24. * @param $number Vstupni cislo
25. * @return Faktorial vstupniho cisla
26. * @author Thomas (www.adamjak.net)
27. */
28.int fakt_rek(int number) {
29.    if (number < 0)
30.    {
31.        return 0;
32.    }
33. 
34.    if (number == 0 || number == 1)
35.    {
36.        return 1;
37.    }
38. 
39.    return number * fakt_rek(number - 1);
40.}
01./** Autor: Vaclav Kejr */
02.public long Faktorial(int n)
03.{
04.    try
05.    {
06.        long faktor = 1;
07.        if (n < 1)
08.        {
09.            throw new ArgumentException("Argument n < 1 !", n.ToString());
10.        }
11.        else if (n == 1)
12.        {
13.            return faktor = 1;
14.        }
15.        else if (n >= 2 && n <= 20)
16.        {
17.            for (int i = 2; i <= n; i++)
18.            {
19.                faktor *= i;
20.            }
21.            return faktor;
22.        }
23.        else
24.        {
25.            throw new ArgumentException("Argument n > 20 !", n.ToString());
26.        }
27.    }
28.    catch (SystemException ex)
29.    {
30.        Console.WriteLine(ex.ToString());
31.        return -1;
32.    }
33.}
01./**
02. * Vypocita faktorial vstupniho cisla
03. * @param $number Vstupni cislo
04. * @return Faktorial vstupniho cisla
05. * @author Thomas (www.adamjak.net)
06. */
07. 
08.function faktorial($number) {
09.    if ($number < 0) {
10.        die("zaporny argument");
11.    }
12.    $result = 1;
13.    for ($i = $number; $i > 1; $i--) {
14.        $result *= $i;
15.    }
16.    return $result;
17.}
18. 
19. 
20./**
21. * Vypocita faktorial vstupniho cisla rekurzivni formou algoritmu
22. * @param $number Vstupni cislo
23. * @return Faktorial vstupniho cisla
24. * @author Thomas (www.adamjak.net)
25. */
26. 
27.function faktorial_rek($number) {
28.    if ($number < 0) {
29.        die("zaporny argument");
30.    }
31.    if ($number == 0 || $number == 1) {
32.        return 1;
33.    }
34.    return $number * faktorial_rek($number - 1);
35.}
1.fact(0,1).
2.fact(N,R) :- N >= 0, integer(N), N1 is N - 1, fact(N1,R1), R is N * R1.
01.(defun fact (x)
02."generates factorial of x"
03.(if (= x 0)
04.   1
05.   (* x (fact (- x 1)))))
06. 
07.(defun fact2 (x)
08."generates factorial of x"
09.(if (zerop x)
10.   1
11.   (* x (fact2 (1- x)))))
12. 
13.(defun fact3 (x)
14."generates factorial of x"
15.(cond ((zerop x) 1)
16.       (T (* x (fact3 (1- x))))))

SEO od společnosti Digital Pylon


Online casino s algoritmem

České casino online online slot-vegas.cz

Hrajte nejlepší hry jako je GoodGame Empire.





Zajímavé články: Jak najít práci snů? Zvolte kariéru v IT!, Češi mají rádi hrací automaty online, Jak funguje algoritmické obchodování Casino, Online výuka Algoritmus a online marketing mají svá pravidla, Automaty, Matematický vliv, Ratings, Jak fungují algoritmy hazardních her online: více znalostí, více peněz, SYPWAI - nástroj pro vědecký vývoj, Vynikají na globálním trhu: Nejlepší vývojáři softwaru pro online výherní automaty, Jak si vybrat nejlepší české online casino, Proč byste měli hrát online casino VPN revoluce, Kde najdeme algoritmy v každodenním životě?, Čeká vás pracovní pohovor mimo město? Podívejte se, jak dokonale zvládnout včasný příchod, 5 úžasných technologií ze světa hazardních her, Mirror and access to Mostbet, Svou kancelář můžete mít stále po ruce, Jaké výhody má digitalizovaná firma oproti off-line konkurenci?, Jaký systém vybrat pro snadné řízení výroby?, Nahradí umělá inteligence ajťáky?, Důvody, proč používat SnapTik ke stahování videí TikTok, Dokonalý den na pláži: Co si vzít s sebou, aby byl výlet zábavný a bezpečný?, Jak přežít dlouhý let?, Go pay GoodGame Empire, Blockchain, Rozhovor, Umělá inteligence, Ochranná známka pre softvér: Prečo ju registrovať?, Role kryptografických algoritmů v zabezpečení online kasin, Jaké jsou náklady na nákup 3D tiskárny?, Jak algoritmy vylepšují online zážitky v roce 2025,


Doporučujeme

Internet pro vaši firmu na míru

https://www.algoritmy.net