[C] Les Boucles For

Utilisateur anonyme -  
 Utilisateur anonyme -
Bonjour,

Je réalise un programme en C et j'ai besoin de faire une boucle for pour des valeur précises : 2, 3, 5, 7, 11, .. : des nombres premiers.

Je pense en mettre maximum 20 différentes.


Es ce possible?

merci d'avance,
Julien
A voir également:

7 réponses

Brachior Messages postés 616 Statut Membre 46
 
ce que tu peux faire c'est un boucle for avec un i qui s'increment de 1 en 1
puis apres tester si ton i est premier .. si oui alors tu fais ton bidouillage .. sinon tu continu ta boucle ^^
1
Utilisateur anonyme
 
Si ce que je demande n'est pas possible, je ferai comme ça oué ^^ mais c'est lourd.
0
Brachior Messages postés 616 Statut Membre 46
 
c'est qu'un petit if en plus ^^ lol
enfin bon a ma connaissance ( maigre je l'avoue ^^ ) je n'en connais pas Oo
0
Utilisateur anonyme
 
euhh, il y a une fonction en C qui revoie si le nombre est premier?! ..
0
mype Messages postés 2449 Statut Membre 437
 
je crois pas... tu dois la faire toi meme mais c'est pas tres compliqué ;)
0
Brachior Messages postés 616 Statut Membre 46
 
oui et non ^^ plutot une regle de calcul ^^
une question de modulo je sais plus trop trop ^^ je cherche et j'te dis ca ^^
0
mype Messages postés 2449 Statut Membre 437 > Brachior Messages postés 616 Statut Membre
 
oui il suffit de faire le modulo du nombre N avec tous les nombre inferieur a N et si le modulo n'est jamais egal a zero alor le nombre est premier
0
Brachior Messages postés 616 Statut Membre 46 > Brachior Messages postés 616 Statut Membre
 
tu fais une fct :
int premier (int nb){
  int i, test = 0 prems = 0;
  for (i = 2; i < nb; i++)
    if (nb % i == 0)
      test = 1;
  if (!test)
    prems = 1;
  else
    prems = 0;
  return prems;}
puis ds ton main :
for(i=0;i<N;i++){
  test=premier(i);
  if(test==1){ .... }}
ca devrait marcher ^^
0
Utilisateur anonyme
 
ok merci,

ptite derniere question, est il possible de modifier la valeur de i dans une boucle for ?

par exemple :

for(i=0; i<10; i++){
razrazraz
....

i=i+3;
}
0
Brachior Messages postés 616 Statut Membre 46
 
oui biensur ^^ par contre fais attention
si par exemple i=2 et que tu fais i=i+3 alors i vaudra 6 et non 5 car il prendra le i++ justa apres ;)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mype Messages postés 2449 Statut Membre 437
 
oui c'est possible
mais ça va te faire sauté des "i"
avec ton exemple au premier tour ça sera i=0 mais au deuxieme tour tu vas passé directement a i=4
0
lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité 3 570
 
Salut,

voici quelques algo en C, pour vérifier si un nombre entier est premier
http://www.commentcamarche.net/faq/sujet 7646 verifier si un nombre entier est un nombre premier en c
0
Utilisateur anonyme
 
c'est gentil, merci de votre aide!
0