|
|
Algorithmes
|
Les ordinateurs actuels sont bêtes mais besogneux !
Si vous attendez
d'eux la moindre intelligence : laissez tomber,
la seule intelligence que montreront vos programmes
est celle que vous y aurez apportée vous-même.
En revanche,
vous pouvez compter sur ces bonnes bêtes
pour réaliser inlassablement et très rapidement
des actions répétitives, qui, franchement, nous barbent prodigieusement,
nous, les humains !
Ces actions répétitives sont réalisées à l'aide des instructions algorithmiques que nous alons voir dans cette page.
Ces instructions sont au nombre de trois :
for( ... ,
... , ... ) {... ; ... ; ...}
while( ... ) {... ; ... ; ...}
do {... ; ... ; ...}while( ... ) ;
Comme Monsieurs Jourdain, tout le monde passe sa vie à faire des algorithmes, mais rares sont ceux qui savent que cela s'appelle comme çà !
Le boucher
s'adresse à son apprenti :
Prends ces carcasses, découpe des côtelettes et je ne veux pas
te voir lever le nez tant qu'il n'y en aura pas soixante !
Ouste !
Que fait le garçon boucher ?
|
Et il relève
le nez !
Et le partron lui commande de faire autre chose !
Et le garçon ne trouve pas ça bien amusant.
Mais ainsi va la vie !
Comme Mozart, l'ordinateur, lui, n'est ni heureux ni malheureux ... à méditer.
|
La plus importante des instructions
de C
for( ... ; ... ; ... ) { ... ; ... ; etc. } |
|||
|
for
( préparation ; condition
de maintien ; faire après chaque action
répétitive )
action répétitive ; |
|||
|
Pour reprendre le sanglant exempe précédent : for
( Dès que l'assertion nombre de côtelettes coupées inférieure à 60 est fausse le programme cesse de boucler et passe à la suite.
for
( Les actions
partielles constituant l'action répétitive doivent alors
être mises entre accolades { }. Résumons- nous ; for
( préparation ; condition de maintien; faire après chage
tour) |
|||
|
Exemple
|
|||
|
Souvenez-vous du programme fait précédemment pour illustrer les contenus des tableaux :
On peut simplifier cosidérablement ce programme par utilisation de la boucle for( ...
Exécution
:
Quelques remarques de style de programmation : L'étendue
du tableau (nombre d'éléments) est ici symbolisée
par la constante macro MAX_TABLE, plutôt que par le nombre 7. L'initialisation du tableau se fait lors de la déclaration : c'est plus rapide. La
seule condition de préparation de la boucle "for" est
ici n = 0; Observez
attentivement le rôle du signe "égal" "="
en C. |
|
Boucle while( ...) { ...; ...
; ... }
|
|
|
Cette
boucle a exactement les mêmes propriétés que la boucle
for (... , mais elle s'écrit autrement. while
( condition de maintien) Exemple
:
|
|
Boucle
do { ... ; ... ; ... } while (condition de maintien)
;
|
|
|
Cette
boucle a exactement les mêmes propriétés que la boucle
for (... , ou la boucle while( ...mais elle s'écrit autrement. do Exemple
:
|
|
Instructions
"break" et "continue"
|
||||
|
Exemples :
Exécution
:
la ligne "Element 3 : valeur : u" ne sera pas affichée
Autre exemple avec break :
Exécution
::
L'affichage s'arrêtera avant la ligne "Element 3 : valeur : u" |
|
|