Necesito explicación de script que calcula números primos
Publicado por Capixi (1 intervención) el 31/05/2012 23:02:05
El script funciona correctamente lo único que necesito es que alguien que lo entienda me lo pueda explicar porque por mucho que hice echos no descubro exactamente lo que hace. Tiene que ver con factorización creo... Bueno espero que os animéis ahí os dejo el reto!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/bash
LIMITE="$1" #Numeros primos a partir de 2 y el parametro pasado $1
Primos()
{
(( n = $1 + 1 ))
shift
#echo "_n=$n i=$i_"
if (( n == LIMITE ))
then echo $*
return
fi
for i; do
#echo "-n=$n i=$i-"
(( i * i > n )) && break # Optimizacion: si i * i (factor*factor) es mayor que n salgo del bucle for.
(( n % i )) && continue
Primos $n $@
return
done
Primos $n $@ $n
}
Primos 1
Valora esta pregunta


0