Curso de Raku / Apéndice 🆕 / Trabajar con datos / Números y matemáticas / Exercises / Factorización en primos
Solución: Factorización en primos
Aquí tienes una posible solución para la tarea.
Código
my $n = 360;
my @factors;
for 2..$n -> $d {
while $n %% $d {
@factors.push($d);
$n div= $d;
}
}
say @factors;🦋 Puedes encontrar el código fuente en el archivo prime-factors.raku.
Salida
[2 2 2 3 3 5]Comentarios
Para cada divisor candidato
$d, elwhileinterior lo saca de$ntantas veces como quepa, añadiendo$dcada vez. Como los factores más pequeños se eliminan primero, todo$dque aún divida a$ntiene garantizado ser primo.$n div= $des una división entera de vuelta a$n; encoge el número hasta que no queda más que1.
Navegación del curso
← Factorización en primos | Máximo común divisor y mínimo común múltiplo →