Java: Problème sur les nombres premiers

bxl-styl3 Messages postés 30 Statut Membre -  
bxl-styl3 Messages postés 30 Statut Membre -
Bonjour,

Je n'arrive pas à comprendre pourquoi mon programme ne fonctionne pas.

public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);

System.out.println("Veuillez introduire un nombre");
int nombre = scanner.nextInt();
int i = 2;

while((i<nombre-1) || (nombre%i!=0)){

i++;
}

if(nombre%i==0){

System.out.println("Pas premier");
}else{

System.out.println("Nombre premier !");
}

// TODO Auto-generated method stub

}

il me dis "nombre pas premier pourtant j'ai l'impression de n'avoir fait aucune erreur.

Je vous remercie

3 réponses

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    C'est une question de logique. Tu devrais avoir un && à la place du || dans le while.
    Evidemment ce n'est pas le seul problème. Je ne veux pas me plagier moi même, alors je te conseilles d'aller me lire ici
    --
    La confiance n'exclut pas le contrôle
    0
  2. bxl-styl3 Messages postés 30 Statut Membre 1
     
    non ça n'affiche pas erreur mais ça me donne pas la réponse que je veux.
    0
  3. sakoba2010 Messages postés 165 Statut Membre 15
     
    Qu'est ce que le compilateur Affiche comme erreur?
    -1