Cursus Raku / Addendum 🆕 / Werken met gegevens / Getallen en wiskunde / Exercises / Priemfactorontbinding
Oplossing: Priemfactorontbinding
Hier is een mogelijke oplossing voor de taak.
Code
my $n = 360;
my @factors;
for 2..$n -> $d {
while $n %% $d {
@factors.push($d);
$n div= $d;
}
}
say @factors;🦋 Je kunt de broncode vinden in het bestand prime-factors.raku.
Uitvoer
[2 2 2 3 3 5]Opmerkingen
Voor elke kandidaat-deler
$ddeelt de binnenstewhilehem zo vaak uit$nals hij erin past en duwt hij$der telkens bij. Omdat de kleinere factoren eerst verwijderd worden, is elke$ddie$nnog deelt gegarandeerd priem.$n div= $dis gehele deling terug in$n; het laat het getal krimpen tot er niets dan1overblijft.
Cursusnavigatie
← Priemfactorontbinding | Grootste gemene deler en kleinste gemene veelvoud →