Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
5<br />
Les instructions alternatives<br />
L'instruction de choix : if<br />
Nous avons vu en Algorithmique (et en codage <strong>Ada</strong> associé) l'instruction de choix if dans sa forme simple (if<br />
then .. end if) et dans sa forme double (if then .. else .. end if). En <strong>Ada</strong> l'instruction if<br />
peut gérer bien plus que ces deux cas. La syntaxe est la suivante (D.S. déjà proposé dans le cours n°1!) :<br />
instruction if :<br />
if expression then suite d’instructions<br />
elsif expression then suite d’instructions<br />
else<br />
suite d’instructions<br />
end if ;<br />
Ce qui nous intéresse ici c’est, au milieu, la « cascade » de elsif que l’on peut intercaler entre le then et le<br />
else. Le elsif signifie else if mais n’implique pas de end if. Cette forme permet de gérer efficacement la<br />
succession de plusieurs if avec un seul end if. L’expression est booléenne évidemment.<br />
Exemple : (à voir dans l'exercice : « nombre de jours d’un mois » exercice n°2 du cours n°2 !)<br />
type<br />
T_MOIS is (JANVIER, FEVRIER, MARS, AVRIL, MAI, JUIN,<br />
JUILLET, AOUT, SEPTEMBRE, NOVEMBRE, DECEMBRE);<br />
MOIS : T_MOIS;<br />
if MOIS = FEVRIER<br />
then .....—- le mois fait 28 ou 29 jours<br />
elsif (MOIS = AVRIL) or (MOIS = JUIN) or (MOIS = SEPTEMBRE)<br />
or (MOIS = NOVEMBRE)<br />
then ....—- le mois fait 30 jours<br />
else -- ce sont les autres mois restants : MARS, MAI,....<br />
.....—- le mois fait 31 jours<br />
end if;<br />
Rappel : plusieurs branches elsif peuvent être présentes (ce n’est pas le cas ici).<br />
Nous verrons de nombreuses applications dans les TD et TP <strong>Ada</strong>.<br />
D. Feneuille I.U.T. Aix 2001 (cours n°3 fichier COURS3.DOC) 30/06/02