Programmez !

  1. La logique
    1. La notion de boucle
Posons nous un petit problème inutile, on veut ajouter tous les nombres de 1 à 10 et afficher le résultat.
Voici notre excuse pour réaliser une introduction aux boucles. Les boucles permettent de répéter un bloc d'instructions un nombre fixe de fois, en utilisant une variable pour compter ce nombre de fois.
Voici notre algorithme:
<< MET A 0 LA VARIABLE DE RESULTAT (il n'est pas nécessaire d'initialiser la variable qui compte) >>
<< COMMENCE A COMPTER A PARTIR D'ICI DE 1 A 10 >>
<< AJOUTE LA VARIABLE QUI COMPTE AU RESULTAT TOTAL >>
<< FINI DE COMPTER ICI ET REVIENS AU DEBUT SI TU AS PAS FINI >>
<< AFFICHE LE RESULTAT >>
Et voilà ce que ça donne sur le programme:

:0A
:For (I,0,10)
:A+IA
:End
:Disp A


On constate que le résultat est celui attendu, on a demandé de compter dans I, de 1 à 10, (voir descriptif des commandes).

La boucle "FOR" n'est pas la seule boucle qui existe, il existe aussi la boucle "WHILE" et la boucle "REPEAT", de fonctionnement similaire.
La boucle WHILE va répéter le bloc tant que la condition n'est pas satisfaite, en fait on aurais put récrire le programme ainsi:

:0A
:0I
:While I10
:A+IA
:I+1I
:End
:Disp A


La boucle "REPEAT" est identique, sauf qu'elle fait le test non pas au début mais à la fin, et inverse la condition, ce qui peut avoir son importance mine de rien, réécrivons le programme encore une fois:

:0A
:0I
:Repeat I>10
:A+IA
:I+1I
:End
:Disp A


Et avec Goto et Lbl ? Allez, encore une fois:

:0A
:0I
:Lbl T
:A+IA
:I+1I
:If I10
:Then
:Goto T
:End
:Disp A


Cependant, pour cet exemple, le meilleur choix était la boucle "FOR" puisque c'est celle qui inclut le comptage directement, et il faut se méfier de la boucle avec Goto car elle ralentit la calculatrice en prenant de plus en plus de mémoire à chaque saut.

<<Précédent      Suite>>