Kalkulačka faktoriálu

Rozsah: 0 až 170 (limit JavaScriptu)

📊 Výsledek

5!
=
120
📏 Počet číslic
3
🔟 Koncové nuly
1
🔢 Vědecký zápis
1.2e+2

📝 Výpočet krok za krokem:

🎨 Vizuální strom násobení

🎯 Permutace a kombinace

🔄 Permutace P(n,r)

Vzorec: P(n,r) = n!/(n-r)!
60
5!/(5-3)! = 60

💡 Záleží na pořadí: ABC ≠ BAC

🎲 Kombinace C(n,r)

Vzorec: C(n,r) = n!/(r!(n-r)!)
10
5!/(3!×2!) = 10

💡 Na pořadí nezáleží: ABC = BAC

📋 Referenční tabulka faktoriálů

n n! Počet číslic Příklad z praxe

💡 Zajímavosti

🃏 Míchání karet

52! ≈ 8.07 × 10⁶⁷ možných uspořádání. Kdyby každý člověk na Zemi míchal jeden balíček za sekundu od Velkého třesku, sotva bychom se přiblížili!

🎭 Sezení v divadle

10 lidí lze usadit v 10! = 3 628 800 různých způsobech. Organizace se tak stává exponenciálně složitější!

📊 0! = 1

Z definice platí 0! = 1. Existuje přesně jeden způsob, jak „uspořádat“ nulový počet objektů: nedělat nic! Díky tomu fungují vzorce konzistentně.

🚀 Rychlost růstu

Faktoriál roste rychleji než exponenciála! Zatímco 2ⁿ se zdvojnásobuje, n! se násobí stále většími hodnotami. 100! má 158 číslic!

Kalkulačka faktoriálu – Vypočítejte n! s kroky

🔢 Vypočítejte faktoriál (n!) pro libovolné číslo od 0 do 170. Prohlédněte si rozpis krok za krokem, permutace, kombinace a praktické využití.

Co je faktoriál?

Faktoriál nezáporného celého čísla n, značený jako n!, je součin všech kladných celých čísel menších nebo rovných n. Vyjadřuje počet způsobů, jak uspořádat n různých objektů.

Vzorec pro faktoriál

n! = n × (n-1) × (n-2) × ... × 3 × 2 × 1

  • 0! = 1 (z definice)
  • 1! = 1
  • n! = n × (n-1)! (rekurzivní definice)

Příklady faktoriálu

  • 5! = 5 × 4 × 3 × 2 × 1 = 120
  • 10! = 10 × 9 × 8 × 7 × 6 × 5 × 4 × 3 × 2 × 1 = 3,628,800
  • 0! = 1 (speciální případ)
  • 20! = 2,432,902,008,176,640,000

Proč 0! = 1?

Existuje přesně jeden způsob, jak uspořádat nula objektů: prázdné uspořádání. Tato definice zajišťuje, že matematické vzorce (zejména v kombinatorice) fungují správně. Je také v souladu s rekurzivním vzorcem: n! = n × (n-1)!, takže 1! = 1 × 0! znamená, že 0! musí být 1.

Permutace

P(n,r) = n!/(n-r)!

Počet způsobů, jak uspořádat r objektů z n různých objektů, kde záleží na pořadí.

  • Příklad: P(5,3) = 5!/(5-3)! = 120/2 = 60
  • Využití: Pořadí na stupních vítězů v závodě (1., 2., 3.)

Kombinace

C(n,r) = n!/(r!(n-r)!)

Počet způsobů, jak vybrat r objektů z n různých objektů, kde na pořadí nezáleží.

  • Příklad: C(5,3) = 5!/(3!×2!) = 120/(6×2) = 10
  • Využití: Loterijní čísla, výběr komise

Koncové nuly v n!

Koncové nuly vznikají díky faktorům 10 = 2 × 5. Protože faktorů 2 je vždy více než 5, stačí počítat jen faktory 5:

Nuly = ⌊n/5⌋ + ⌊n/25⌋ + ⌊n/125⌋ + ...

  • 10! má 2 koncové nuly (10, 5)
  • 25! má 6 koncových nul (5, 10, 15, 20, 25×2)
  • 100! má 24 koncových nul

Praktické využití

  • Kryptografie: počet možných šifrovacích klíčů
  • Plánování: způsoby uspořádání schůzek, úkolů, událostí
  • Genetika: možné sekvence DNA/proteinů
  • Pravděpodobnost: výpočet šancí ve hrách, loteriích
  • Informatika: analýza složitosti algoritmů
  • Výroba: uspořádání výrobních linek
  • Logistika: úlohy optimalizace tras

Známé hodnoty faktoriálu

  • 52! ≈ 8.07 × 10⁶⁷ (počet zamíchání balíčku karet)
  • 70! ≈ 1.2 × 10¹⁰⁰ (překračuje počet atomů ve vesmíru ≈ 10⁸⁰)
  • 100! ≈ 9.3 × 10¹⁵⁷ (158 číslic!)
  • 170! ≈ 7.3 × 10³⁰⁶ (maximum pro JavaScript)

Stirlingova aproximace

Pro velká n je výpočet přesných faktoriálů nepraktický. Stirlingova aproximace nabízí:

n! ≈ √(2πn) × (n/e)ⁿ

Přesnost aproximace roste s n. Pro n = 10 je chyba < 1 %.

Rychlost růstu faktoriálu

Faktoriál roste mnohem rychleji než exponenciální nebo polynomiální funkce:

  • Polynomická: n² = 100 pro n=10
  • Exponenciální: 2ⁿ = 1,024 pro n=10
  • Faktoriál: n! = 3,628,800 pro n=10

Dvojitý faktoriál

Dvojitý faktoriál (n!!) násobí každé druhé číslo:

  • n!! = n × (n-2) × (n-4) × ... × 2 nebo 1
  • 7!! = 7 × 5 × 3 × 1 = 105
  • 8!! = 8 × 6 × 4 × 2 = 384

Subfaktoriál (deranžmá)

Subfaktoriál !n počítá permutace, ve kterých se žádný prvek neobjeví na své původní pozici:

!n = n! × (1/0! - 1/1! + 1/2! - 1/3! + ... + (-1)ⁿ/n!)

Příklad: !3 = 2 (uspořádání ABC, kde žádné písmeno není na původním místě: BCA, CAB)

Implementace v programování

Iterativní přístup:

function factorial(n) {
    let result = 1;
    for (let i = 2; i <= n; i++) {
        result *= i;
    }
    return result;
}
            

Rekurzivní přístup:

function factorial(n) {
    if (n === 0 || n === 1) return 1;
    return n * factorial(n - 1);
}
            

💡 Tip: Při výpočtu permutací nebo kombinací rušte společné faktory ještě před výpočtem, abyste se vyhnuli přetečení. Např. pro C(100,2) = 100!/(2!×98!) počítejte jako (100×99)/2 = 4,950 místo výpočtu obrovských faktoriálů zvlášť!

Komentáře (0)

Podělte se o svůj názor — prosím, buďte slušní a držte se tématu.

Zatím žádné komentáře. Zanechte komentář a podělte se o svůj názor!

Chcete-li zanechat komentář, přihlaste se.

Přihlaste se pro komentování