L'essentiel du langage C

Utiliser while et do-while

Testez gratuitement nos 1257 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Faites la différence entre les deux structures while et do-while. Notez qu'elles paraissent semblables alors qu'elles ont une différence lors de la programmation.
07:36

Transcription

Nous allons voir la structure de contrôle do/while Tour d'abord, la structure while seule. C'est une structure répétitive c'est-à dire que vous avez le mot "while" qui est un mot réservé du C donc que vous ne pouvez pas utiliser autrement que pour ce qu'elle est faite. Tant que cette condition est vraie, vous effectuez le programme qui est à l'intérieur des deux accolades. Attention ! Toujours pas de ";" Si cette condition est fausse, vous sautez, les conditions sont fausses, on passe au reste du programme. Attention. Petit bémol. while (condition(s) vraie(s)) Cette condition est vraie donc vous restez à l'intérieur Donc, ça veut dire que les actions que vous allez mener à l'intérieur de la boucle vont, à un moment ou à un autre, devoir interagir sur la condition qui est ici sinon vous allez être bloqués indéfiniment. Donc, méfiance. L'autre structure qui existe, c'est la do/while Alors, "do" qui est aussi un mot réservé donc pas le droit d'en faire autre chose. Vous ouvrez et vous fermez l'accolade qui est ici. Toujours pas de ";" même ici après Et la différence avec le while, c'est que vous faites au moins une fois l'action. Si la condition est vraie, ok, je continue. Si la condition est fausse, eh bien je sors. Donc, ce qu'il faut retenir, de façon très synthétique, c'est que le while, vous n'effectuez pas forcément le code qui est à l'intérieur de cette structure, il suffit simplement que la condition soit fausse pour cela. Tandis que pour le do-while, vous le faites au moins une fois, vu que c'est à la fin que vous vérifiez si la condition est vraie. Je déclare dans la zone de déclaration globale deux variables de type unsigned char auquel je donne un nom approprié et que j'initialise de façon respective à 0 et 10. Là, je vais procéder par exemple, vous voyez que l'on va commenter et décommenter. Alors regardons notre première exemple : while nombre_char donc qui vaut 0 inférieur ou égal à 10, Printf ("Bonjour") Bon, on va voir ce que ça donne, il va nous indiquer 10 fois "Bonjour". Non, pas trop. Que se passe t-il ? Bah, ça parait assez logique, en fait, dans le sens où la condition ici n'est jamais modifiée. En effet, votre programme, ici, ne fait jamais un appel à nombre_char1 pour une modification, donc cette condition est vraie à l'infini. Pas de retour sur la condition, la boucle est infinie. Nous allons passer à autre chose. Pour cela, nous commentons Ctrl+Shift+C et après nous allons prendre notre autre bout de code, Ctrl+Shift+X Cette fois ci, je prends la peine d'incrémenter nombre_char à chaque passage. Et donc, ça modifie ma condition. Et là, cette fois-ci, j'ai bien le nombre de "Bonjour" qui s'affiche 10 fois. Et vous voyez donc l'incrémentation qui se fait automatiquement . Donc, bien comprendre que sur la structure while il faut absolument un retour sur la condition à l'intérieur de la structure. Sinon, c'est fini. Vous allez rester bloqués à l'intérieur de la structure. Alors, Ctrl+Shift+C On commente exemple 3, on décommente. Donc Ctrl+Shit+X Donc là, cette fois-ci, on va lancer un peu la compilation et on va voir ce qui se passe. Là, cette fois-ci, je mets une condition multiple je dis que tant que nombre_char1<=10 && nombre_char2 !=5 sachant que le nombre_char2 était initialisé à 10. On se retrouve avec une double condition. Cette fois-ci, vous avez nombre_char plus que je vais incrémenter donc il va partir de 0 jusqu'à 10, Enfin, pas forcément 10 puisqu'il va être arrêté avant. Pourquoi ? Puisque nombre_char2, quand il va être différent de 5, va s'arrêter. Donc vous avez Bonjour 0 fois avec nombre_char1 qui vaut 0, nombre_char2 vaut 10. 1 est incrémenté pendant que l'autre est décrémenté. Une fois qu'on arrive à l'intersection de ses deux conditions, c'est terminé, on sort de la boucle. Voilà, c'est pour vous montrer que vous pouvez avoir des structures qui sont à multiples conditions comme nous l'avons déjà vu. Commentons avec Shift+Ctrl+C et passons donc cette fois-ci à la structure do-while. Donc Ctrl+Shift+X pour décommenter, Et là, voyons un peu ce qui se passe. On s'attend à ce qu'il nous dise : "affiche-moi 10 fois bonjour, s'il te plaît" vu que j'ai mis nombre_char==10 et là, on s'aperçoit qu'il n'est passé qu'une fois dans la boucle. En fait, il vous a dit : nombre_char a été initialisé à 0 donc je te mets un 0, je te mets un "+" et puis, la condition, elle est fausse donc je m'en vais. Bah si, elle est vraie cette condition si vous la regardez. nombre_char, il est bien égal à 10. Et là, autre chose qu'il faut retenir : il faut vous méfiez des égalités dans les conditions. Ici, le nombre_char ne compte pas jusqu'à 10 mais attend que cette égalité soit de 10. Dès que le premier passage de la condition est faux, on n'affiche qu'une fois le bonjour. Pour que ça fonctionne bien, il faut être moins exclusif. Donc Ctrl+Shift+C Passons au dernier exemple. Ctrl+Shift+X Moins exclusif dans le sens où en fait, vous dites : c'est tant que je suis inférieur ou égal à Parce que vous allez passer une fois, vous êtes à 1, ce n'est pas dix, Ok, terminé. Je sors de la boucle. Tandis que là, vous allez passer tant que vous n'êtes pas arrivé à 10 Et là, vous obtenez le bon résultat. J'espère avoir été assez concis et assez précis sur ces différentes boucles. Gardez bien à l'esprit que les égalités sont vraiment à proscrire puisque ça ne fonctionne pas. Et n'oubliez surtout pas, dans les conditions while d'avoir un retour sur la condition à l'intérieur de votre structure. Il doit y avoir une modification, c'est une obligation sinon vous vous retrouverez dans le cas de l'exemple 1.

L'essentiel du langage C

Comprenez les concepts de base du langage C. Développez de simples applications en mode console, afin de comprendre les rouages d’un des langages les plus utilisés au monde.

7h51 (98 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :12 janv. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !