O número primo só é divisível por ele próprio e por 1. Exemplo:1,2,3,5,7,11... Com exceção do número 'dois', os números primos são, em sua grande maioria, impares. Achei um código que imprime números primos de 2 ao valor que você colocar na variável nValor(lógico não um número enorme). Gostaria de saber se alguém poderia explicar como funciona os 3 primeiros loop do for i e j. Só os primeiros 3 para entender.
public class Primos {
public static void main(String[] args) {
int nValor = 8; //defini como 8 para ficar mais fácil entender a lógica
boolean primo = true;
for(int i = 2; i <= nValor; i++) { //i=2 e fará loop até 8 incrementando 2 depois 3,4,5,6,7,8
primo = true;
for(int j = 2; j < i; j++) {
/*Aqui minha dúvida j=2 o i =2 não executa primeiro loop (estou certo?) no segundo loop i=3 maior que j=2 daí começa o if abaixo 3/2 ,segundo loop 4/3 , terceiro loop 5/4 (É isso mesmo?)*/
if (i % j == 0){
primo = false;//se não for primo não é exibido
break;
}
}
if (primo)//se for primo o número é exibido
System.out.println(i);
}
}
}
