Función que devuelve true si un numero es primo :p
Quizás se pueda optimizar más, pero weno jeje
Quizás se pueda optimizar más, pero weno jeje
Código (cpp) [Seleccionar]
bool primo(unsigned int u){
unsigned int i=0;
if(u<2) return FALSE; //Comprobar si es 1
for (i=2; u%i!=0; i+=2) {if(i>u/2){ i=u; break;}} //Rompera cuando se encuentre un divisor, o el 'i' sea mayor que la mitad de el numero (para ahorrar tiempo)
if (u == i) return TRUE; //Si el divisor encontrado es el mismo numero, es primo
else return FALSE; //Sino, no lo es
}