0

Kalkulačka permutací a kombinací (nPr, nCr)

Vypočítejte nPr (permutace) a nCr (kombinace) ze stejných n a r, s ukázkou skutečného krácení faktoriálů krok za krokem v přesné aritmetice BigInt.

🔒 Zpracováno výhradně ve vašem prohlížeči – nic, co zde zadáte, se nikdy nenahraje.

Zpracovává se... 0%
Načítání n a r
Rozepisování faktoriálového řetězce
Hotovo

Výsledek

Permutace (nPr) udává počet způsobů, jak seřadit r prvků vybraných z množiny n prvků, pokud záleží na pořadí; kombinace (nCr) udává počet způsobů výběru, pokud na pořadí nezáleží. Tato kalkulačka přijme n a r a vypočítá obě hodnoty zároveň, takže přímo vidíte, o kolik více je způsobů, jak skupinu uspořádat, než ji pouze vybrat.

Většina kalkulaček počítá nPr jako n! děleno (n-r)!, což znamená výpočet obrovských faktoriálů, které se následně většinou opět vykrátí. Tento nástroj se tomuto plýtvání zcela vyhýbá: nPr = n × (n-1) × ... × (n-r+1) je sestaveno přímo jako řetězec přesně r sestupných členů, což je již zkrácený tvar. Pro 8P3 je to 8 × 7 × 6 = 336, zobrazené přesně tak, jak by to napsal člověk při ručním výpočtu. nCr pak tento řetězec vydělí r! = r × (r-1) × ... × 1 — pro 8C3 je to 336 ÷ (3 × 2 × 1) = 336 ÷ 6 = 56 — opět zobrazeno jako explicitní dělení, ne skrytý poměr faktoriálů.

Každý krok používá BigInt, celočíselný typ JavaScriptu s libovolnou přesností, takže nedochází k žádnému zaokrouhlování plovoucí řádovou čárkou: n může jít až do stovek a výsledek je stále přesné celé číslo, nikoli aproximace, která začíná ztrácet číslice, jakmile běžné kalkulačkové faktoriály přetečou přesnost double. Řetězce delší než zhruba tucet členů se zobrazují zkráceně (prvních několik členů, výpustka, posledních několik členů) čistě kvůli čitelnosti — podkladová aritmetika vždy používá všechny členy.

Permutace a kombinace se neustále vyskytují v pravděpodobnosti, statistice, šancích v loteriích a karetních hrách, rozvrzích a zasedacích pořádcích a v domácích úkolech z kombinatoriky. Vše běží lokálně ve vašem prohlížeči — žádná registrace, žádná komunikace se serverem — a kompletní postup krok za krokem lze zkopírovat jako prostý text jedním kliknutím pro úkoly nebo dokumentaci.