La boucle for

Fermé
Eliiott - 19 mars 2012 à 21:57
loupius Messages postés 697 Date d'inscription dimanche 1 novembre 2009 Statut Membre Dernière intervention 31 décembre 2017 - 20 mars 2012 à 20:34
Bonjour, svp je veux traduire la phrase de l'algorithme suivante en langage c
la phrase c'est : " pour i de 1 a 10 pas 2 "
merci d'avance
A voir également:

3 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 840
19 mars 2012 à 21:58
Bonjour,

C'est quoi qui te pose problème ?
La syntaxe : for (initialisation; condition; incrémentation)
2
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
20 mars 2012 à 09:51
J'aurai plutôt dit :
for(instruction préliminaire au bloc; condition à remplir pour rester dans le bloc; instruction à effectuer avant le bloc suivant)
1
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 840 > Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023
20 mars 2012 à 10:44
Effectivement.
0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 018 > Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023
20 mars 2012 à 10:47
"instruction à effectuer avant le bloc suivant", serait plutôt "instruction à effectuer après le bloc" parce que cette instruction sera effectuée même s'il n'y a pas de bloc suivant...
on pourrait dire aussi "instruction à effectuer avant de tester la condition"
0
loupius Messages postés 697 Date d'inscription dimanche 1 novembre 2009 Statut Membre Dernière intervention 31 décembre 2017 148
Modifié par loupius le 20/03/2012 à 20:36
J'vais ajouter mon grain de sel...

Je préfère :
 "instruction à effectuer après le bloc"
plutôt que :
 "instruction à effectuer avant de tester la condition".
En effet, lors de la première entrée dans la boucle, la troisième partie du 'for' n'est pas exécutée bien que la deuxième le soit.
Bonne réflexion.
0
Torpix Messages postés 510 Date d'inscription samedi 29 octobre 2011 Statut Membre Dernière intervention 15 mai 2020 130
20 mars 2012 à 11:44
for(i = 1; i < 10 ; i + 2)
{
// ton programme
}

Voila :)
0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 018
20 mars 2012 à 11:48
Pour info : ton code n'est pas correct...
0
Torpix Messages postés 510 Date d'inscription samedi 29 octobre 2011 Statut Membre Dernière intervention 15 mai 2020 130
20 mars 2012 à 11:55
autant pour moi , j'ai oublié un =
for(i = 1; i < 10 ; i += 2)
{
}
0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 018
20 mars 2012 à 11:56
J'aurais même dit que tu en as oublié deux ! Même si ça ne changera rien en pratique...

for(i=1; i <=10 ; i+=2) 
{
}
0
Torpix Messages postés 510 Date d'inscription samedi 29 octobre 2011 Statut Membre Dernière intervention 15 mai 2020 130
20 mars 2012 à 11:58
ca change que si tu veux le faire aller jusqu'a 11! mais en general je veux toujours que i soit inferieur strict donc je met jamais le = c'est pour ca :)
0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 018
20 mars 2012 à 12:02
Non, la question était " pour i de 1 a 10 pas 2 ".
Si on oublie le "pas 2" un instant, et qu'on le remplace par "pas 1", mettre i<10, itérera jusqu'à 9, mais le 10 ne sera pas pris en compte. Pour avoir 10 il faut mettre i<=10, et en aucun cas ça ne fera 11.
Après le fait qu'on commence à 1 en allant de 2 en 2 fait qu'on ne tombera jamais sur 10, mais l'écriture i<=10 reste correcte et dans tous les cas on atteindra pas 11 !
0
for(1;10;2)
-5
chossette9 Messages postés 4239 Date d'inscription lundi 20 avril 2009 Statut Contributeur Dernière intervention 12 septembre 2014 1 308
20 mars 2012 à 11:42
Bonjour,

c'est quel langage ça ? Sûrement pas du C.
0
loupius Messages postés 697 Date d'inscription dimanche 1 novembre 2009 Statut Membre Dernière intervention 31 décembre 2017 148
20 mars 2012 à 20:34
Du C ? Mais pourquoi pas !
Il n'y aura pas d'erreur à la compilation, peut-être quelques warnings ?
Mais je crains que le résultat ne soit pas celui escompté... à moins de vouloir fabriquer une boucle infinie!
Bonne continuation.
0