Bonjour

j'ai une autre question à propos de unreachable code detected.
Ce code marche parfaitement (sans le break) pour trouver les nombres premiers jusqu'à 9: il donne 2,3,5,7.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
static void Main()
    {
        int laa = 9;
        bool b;
        if (laa != 0 && laa != 1)
        {
            for (int num = 2; num <= laa; num++)
            {
                b = true;
                for (int div = 2; div <= num / 2; div++)
                {
                    if (num % div == 0)
                        b = false;
                    //break;
                }
 
                if (b == true)
                    Console.WriteLine(num + " ");
            }
        }
    }
Maintenant, je veux mettre un break pour que le code sorte de la boucle dès qu'il a trouvé que num % div =0. Le 9 va être divisé par 2, 3 et 4: 9%3 =0, donc je veux sortir de la boucle qui n'apporte plus rien.
Si je mets le break, le code donne: 2,3,5,7 et 9 et j'ai un avertissement comme quoi 'div' est 'unreachable code detected' à la ligne div++.
Deux questions:
1) pourquoi donne-t-il le 9?
2) comment arrêter la boucle dès que num % div = 0?
Merci
R.