Con la tecnología de Blogger.

Determinar si un número es o no primo


· Nombre de la función: esPrimo
· Parámetros: un entero int
· Devuelve: true o false, un dato del tipo boolean

Como ejemplos de los sentencias iterativas for y break ya tuvimos la ocasión de calcular los números primos comprendidos entre 3 y 100. Recuérdese que:

· un número par no es primo, excepto el 2
· un número impar es primo si no es divisible por los números impares comprendidos entre 1 y numero/2

boolean bPrimo=true;
for(int i=3; i<numero/2; i+=2){
if(numero%i==0){
bPrimo=false;
break;
}
}

Ahora, se trata de poner las líneas de código dentro de una función que determine si un número es primo (devuelve true) o no es primo (devuelve false), para que pueda ser reutilizada. El código de la función esPrimo es la siguiente:

boolean esPrimo(int numero){
if(numero==2) return true;
if(numero%2==0) return false;
boolean bPrimo=true;
for(int i=3; i<numero/2; i+=2){
if(numero%i==0){
bPrimo=false;
break;
}
}
return bPrimo;
}

Podemos ahorrarnos la variable bPrimo, escribiendo la función esPrimo de la siguiente forma equivalente:

boolean esPrimo(int numero){
if((numero!=2)&&(numero%2==0)) return false;
for(int i=3; i<numero/2; i+=2){
if(numero%i==0){
return false;
}
}
return true;
}
Share on Google Plus

Sobre Rafa

Soy un apasionado de las nuevas técnologias, Internet, los videojuegos, la cultura japonesa y de USA.
    Blogger Comment
    Facebook Comment

0 comentarios:

Publicar un comentario

Gracias por comentar ;-)