Bonsoir tout le monde
Il y'a deux algorithmes que je ne comprends pasJe l'ai fais en cours après il y'avait eu la correction
Pouvez-vous m'expliquer svp ?
Je sais qu'un nombre est dit premier si ses deux seuls diviseurs entiers positifs sont 1 ou lui-même.
Voici les algorithmes (j'ai mis des commentaires)
Code:#include <iostream> using namespace std; main() { int nombre = 0; int n = 0; int diviseur = 0; cout << "--- Calcul de nombres premiers ---\n"; cout << "Combien souhaitez vous en calculer: "; cin >> nombre; do { n++; // est ce que c'est l'équivalent de n=n+1 et pourquoi on fait cela ? //ici aussi je n'ai pas compris du tout for(diviseur = 2; diviseur < n; diviseur++) if(!(n%diviseur)) break; if(diviseur == n) { nombre--; cout << "Trouvé : " << n << endl; } } while(nombre); cout << "Fini!\n"; }Merci d'avanceCode:#include<iostream> using namespace std; int main() { int N, i=1, nb=0, d; bool est_premier; cout<<"Tapez la valeur de N : "; cin>>N; while(nb<N) { i++; est_premier=true; d=2; while(est_premier && d*d<=i) if(i%d==0)est_premier=false; else d++; if(est_premier==true) nb++; } cout<<"Le N-ième nombre premier est "<<i<<endl; return 0; }
Bonne soirée![]()
-----