Kalkulačka permutácií a kombinácií (nPr, nCr)
Vypočítajte nPr (permutácie) a nCr (kombinácie) z rovnakého n a r, pričom skutočná funkcia zrušenia faktora je zobrazená krok za krokom v presnej aritmetike BigInt.
Výsledok
Permutácia (nPr) počíta počet spôsobov usporiadania r položiek vybraných z množiny n, keď na poradí záleží; kombinácia (nCr) počíta rovnaký výber, keď na poradí nezáleží. Táto kalkulačka berie n a r a počíta oboje naraz, takže môžete priamo vidieť, o koľko viac spôsobov je možné usporiadať skupinu, ako ich jednoducho vybrať.
Väčšina kalkulačiek vyhodnocuje nPr výpočtom n! a (n-r)! oddelene a delením – čo znamená počítať obrovské faktoriály, aby sa väčšina z nich opäť zrušila. Tento nástroj toto plytvanie úplne preskočí: nPr = n × (n-1) × ... × (n-r+1) je zostavený priamo ako reťazec presne r zostupných členov, čo je už zrušená forma. Pre 8P3 je tento reťazec 8 × 7 × 6 = 336, čo je znázornené presne tak, ako by to napísal človek, ktorý to robí ručne. nCr potom rozdelí ten istý reťazec r! = r × (r-1) × ... × 1 — pre 8C3 to je 336 ÷ (3 × 2 × 1) = 336 ÷ 6 = 56 – opäť zobrazené ako explicitné delenie, nie skrytý faktoriálny pomer.
Každý krok používa BigInt, typ JavaScript s ľubovoľnou presnosťou, takže nikdy nedochádza k žiadnemu zaokrúhľovaniu s pohyblivou rádovou čiarkou: n môže ísť až do stoviek a výsledkom je stále presné celé číslo, nie aproximácia, ktorá začne strácať číslice, ako to robia bežné faktoriály kalkulačky, keď pretečú plávajúcou čiarkou s dvojitou presnosťou. Reťazce dlhšie ako tucet výrazov sú zobrazené skrátené (prvých niekoľko výrazov, elipsa, potom niekoľko posledných) len kvôli čitateľnosti – základná aritmetika vždy používa každý výraz.
Permutácie a kombinácie sa neustále prejavujú v pravdepodobnosti, štatistikách, kurzoch lotérií a kartových hier, plánovaní a usporiadaní sedadiel a domácich úlohách z kombinatoriky. Všetko beží lokálne vo vašom prehliadači – žiadna registrácia, žiadna spiatočná cesta na server – a celý postup krok za krokom je možné skopírovať ako obyčajný text jedným kliknutím na domácu úlohu alebo dokumentáciu.