« Programmation C++/Les structures de contrôles » : différence entre les versions

Contenu supprimé Contenu ajouté
m Révocation des modifications de 109.129.63.118 (discussion) vers la dernière version de 89.87.98.95
m Formatage, ajout de code
Ligne 38 :
 
Ce programme demande à l'utilisateur de taper un entier a.
Si a est strictement plus grand que 10, il affiche <ttcode>"a est plus grand que 10"</ttcode>.
Dans le cas contraire, il n'affiche rien.
 
Ligne 60 :
=== Sémantique ===
On évalue la condition :
* si elle est vraie, on exécute l'<ttcode>''instruction1''</ttcode> et on passe à l'instruction suivante
* si elle est fausse, on exécute l'<ttcode>''instruction2''</ttcode> et on passe à l'instruction suivante
 
L'<ttcode>''instruction1''</ttcode> ou l'<ttcode>''instruction2''</ttcode> peuvent être remplacées par une suite d'instructions entre accolades.
 
=== Exemple : ===
Ligne 84 :
</source>
 
Ce programme demande à l'utilisateur de taper un entier <ttcode>a</ttcode>. Si a est strictement plus grand que 10, il affiche <ttcode>"a est plus grand que 10"</ttcode>. Dans le cas contraire, il affiche <ttcode>"a est inférieur ou égal à 10"</ttcode>.
 
==== Exécution 1 ====
Ligne 94 :
 
== Le switch ==
L'instruction <ttcode>switch</ttcode> permet de tester plusieurs valeurs pour une expression.
=== Syntaxe ===
switch(''expression'')
Ligne 117 :
=== Sémantique ===
On teste la valeur de l'expression spécifiée.
On la compare successivement aux constantes <ttcode>constante1</ttcode>, <ttcode>constante2</ttcode>, etc.
 
Si la valeur de l'expression correspond à l'une des constantes, l'exécution débute à l'instruction correspondante.
Si aucune constante ne correspond, l'exécution débute à l'instruction correspondant à <ttcode>default:</ttcode>.
L'exécution se termine à l'accolade fermante du <ttcode>switch</ttcode> ou avant si l'instruction <ttcode>break;</ttcode> est utilisée.
 
En général, l'instruction <ttcode>break</ttcode> sépare les différents cas. Il n'est pas utilisé quand plusieurs cas sont traités par les mêmes instructions.
 
<!--
Si l'expression vaut <ttcode>constante1</ttcode> alors on exécute l’instruction1 et on passe à l’instruction suivante. Si elle vaut c2, on exécute l'instruction2 et on passe à l’instruction suivante. Idem s'il vaut c3. Si elle ne vaut ni c1, ni c2, ni c3 alors on exécute l'instruction après default et on passe à l’instruction suivante. Le default est facultatif. On peut remplacer les instructions instruction1, instruction2, instruction3 par des suites d'instructions sans mettre d'accolades. Les valeurs c1, c2,c3 .. sont obligatoirement des constantes.
-->
 
Ligne 161 :
</source>
 
Ce programme demande à l'utilisateur de taper une valeur entière et la stocke dans la variable a. On teste ensuite la valeur de a : en fonction de cette valeur on affiche respectivement les messages <ttcode>"a vaut 1"</ttcode>, <ttcode>"a vaut 2"</ttcode>, <ttcode>"a vaut 3"</ttcode>, ou <ttcode>"a ne vaut ni 1, ni 2, ni 3"</ttcode>.
 
'''Exécution 1 :'''
Ligne 212 :
</source>
 
Ce programme demande à l'utilisateur de taper une valeur entière et la stocke dans la variable a. On teste ensuite la valeur de a : en fonction de cette valeur on affiche respectivement les messages <ttcode>"a vaut 1"</ttcode>, <ttcode>"a vaut 2 ou 4"</ttcode>, <ttcode>"a vaut 3, 7 ou 8"</ttcode>, ou <ttcode>"valeur autre"</ttcode>.
 
'''Exécution 1 :'''
Ligne 227 :
valeur autre
 
L'instruction <ttcode>switch</ttcode> de cet exemple regroupe le traitement des valeurs 2 et 4, et des valeurs 3, 7 et 8.
 
== Le for "classique"==
Ligne 241 :
 
=== Sémantique ===
# on exécute l'<ttcode>''instruction_init''</ttcode>.
# On teste la <ttcode>''condition''</ttcode> :
#* tant qu'elle est vraie, on exécute l'<ttcode>''instruction_repetée''</ttcode>, puis l'<ttcode>''instruction_suivant''</ttcode> puis on revient au 2.
#* si elle est fausse, la boucle est terminée et on passe à l'instruction suivante.
# L'<ttcode>''instruction_repetée''</ttcode> peut être une suite d'instructions entre accolades.
 
=== Exemples ===
Ligne 448 :
 
== Le goto ==
Le <ttcode>goto</ttcode> est une structure de contrôle obsolète et ne doit plus être utilisé.
 
== Le break ==
L'instruction <ttcode>break</ttcode> sert à "casser" ou interrompre une boucle (<ttcode>for</ttcode>, <ttcode>while</ttcode> et <ttcode>do</ttcode>), ou un <ttcode>switch</ttcode>.
 
=== Syntaxe ===
Ligne 459 :
 
=== Sémantique ===
* Sort de la boucle ou de l'instruction <ttcode>switch</ttcode> la plus imbriquée.
 
=== Exemple ===
Ligne 490 :
 
=== Note importante ===
Le <ttcode>break</ttcode> rend le code difficile à lire, à l'exception de son utilisation dans un <ttcode>switch</ttcode>, il ne doit pas être utilisé (au même titre que le <ttcode>goto</ttcode>).
 
== Le <ttcode>continue</ttcode> ==
L'instruction continue sert à "continuer" une boucle (<ttcode>for</ttcode>, <ttcode>while</ttcode> et <ttcode>do</ttcode>) avec la prochaine itération.
 
=== Syntaxe ===