Prafaktorizacijsko drevo
Faktorizirajte poljubno celo število na njegove prafaktorje in si oglejte, kako je upodobljeno kot klasično razvejano faktorsko drevo, ki se ga učijo v šoli, skupaj s strnjeno eksponentno obliko (360 = 2³ × 3² × 5).
Rezultat
Praštevilo razdeli na praštevila, ki se med seboj pomnožijo, da nastanejo – ena razgradnja, ki jo ima vsako sestavljeno število in natančno ena. To orodje vzame poljubno celo število 2 ali več in ga realno faktorizira, nato pa rezultat nariše kot drevo faktorjev razvejanja, ki se ga učijo v šoli: začnite s številom, odcepite njegov najmanjši prafaktor in nadaljujte z delitvijo preostalega dela, dokler ne ostanejo samo praštevila.
Pravilo cepitve je poskusno deljenje z najmanjšim možnim praštevilom na vsakem koraku: najprej poskusite z 2, nato z lihimi števili 3, 5, 7, 9 ... do kvadratnega korena trenutne vrednosti. Za 360, ki se igra kot 360 = 2 × 180, nato 180 = 2 × 90, nato 90 = 2 × 45, nato 45 = 5 × 9, nato 9 = 3 × 3 – pet razcepov, ki se končajo s šestimi glavnimi listi (2, 2, 2, 3, 3, 5). Če seštejemo te liste, dobimo strnjeno eksponentno obliko, prikazano pod diagramom: 360 = 2³ × 3² × 5.
Vse to deluje z natančno aritmetiko BigInt, tako da na poti navzdol nikoli ni zaokroževanja s plavajočo vejico. Poskusno deljenje do kvadratnega korena je hitro za vsakdanja števila, vendar postaja počasnejše, ko je večji najmanjši praštevilo vnosa, zato orodje omeji vnos na 1.000.000.000.000 (10^12) in poroča o poštenem sporočilu, ki presega to vrednost, namesto da zamrzne zavihek – brskalnik nima posla, da visi na ogromnem polpraštevilu samo zato, da bi dokazal svojo trditev.
Vizualno drevo faktorjev je standardni način poučevanja prafaktoriziranja v šoli in ostane uporabno tudi zunaj učilnice: zmanjševanje ulomkov, iskanje največjega skupnega faktorja ali najmanjšega skupnega večkratnika s primerjavo prapotenc, poenostavljanje kvadratnih korenov in naključno preverjanje, ali je število pra, vse se vrne k isti razgradnji. Vse teče lokalno v vašem brskalniku – brez prijave, brez povratnega obiska strežnika.