Nous allons donc maintenant attaquer les différentes structures, en commençant par celle que l'on voit le plus souvent : 'if' (en français, 'si')
Tout le monde sait faire des phrases au conditionnel...
Ex, Si j'ai 250 Euro, j'irais m'acheter une PSP, sinon, je continuerais à économiser.
Et bien, on traduit directement en Algorythme, ce qui nous donne ceci :
Code |
Fonction AcheterPSP Variables : mesEuros est un réél Début | mesEuros <- CompterMonnai | Si mesEuros supérieur ou égale à 250 | Alors | | AllerAuMagasin | Sinon | | Economiser | FinSi |
CompterMonnai est une fonction me donnant la valeur de mes économies, mais son fonctionnement n'est pas intéressante pour ce cours, comme les fonctions AllerAuMagasin et Economiser.
Regardez bien comment cela est construit :
Code |
| Si [condition] | Alors | | // action réalisée si la condition est vrai | Sinon | | // action réalisée si la condition est fausse | FinSi |
Les conditions ont été vu dans le cours précédent avec les booléens, la même fonction en ruby donnerai ceci :
(Ruby) | |
1 2 3 4 5 6 7 8 9 |
def acheterPSP
mesEuros = CompterMonnai() if mesEuros >= 250 then allerAuMagasin() else economiser() end end |
Je prierais à tout nouveau développeur de bien comprendre que les indentations (espaces mis pour définir les structures) dans les structures, ne sont pas obligatoires pour le bon fonctionnement du programme, mais très très conseillées, pour la bonne compréhension, et donc maintenance du code.
Dans la structure si, il n'est pas obligatoire de faire des actions si la condition est fausse :
Code |
| Si [condition] | Alors | | // action réalisée si la condition est vrai | FinSi |
(Ruby) | |
1 2 3 4 |
if condition
then # action réalisé si la condition est vrai end |
Comme on peut chainer les 'si' sur une condition fausse (SinonSi) :
Code |
| Si [condition1] | Alors | | // action réalisée si la condition1 est vrai | SinonSi [condition2] | | // action réalisée si la condition1 est fausse et condition2 est vrai | Sinon | | // action réalisée si la condition2 est fausse | FinSi |
(Ruby) | |
1 2 3 4 5 6 7 8 |
if condition1
then # action réalisée si la condition1 est vrai elsif condition2 # action réalisée si la condition1 est fausse et condition2 est vrai else # action réalisée si la condition2 est fausse end |
De plus si l'action faite en cas de condition vrai ne fait qu'une seule ligne, on peut l'écrire sous cette forme :
(Ruby) | |
1 |
monEntier = 0 if monEntier > 100
|