FinTantQue 
Fin
Ce qui donne en Java : 
import java.io.*; 
class chap4_note { 
public static void main(String[] args) { 
String tnote; 
int note; 
BufferedReader saisie; 
 
saisie=new BufferedReader(new InputStreamReader(System.in)); 
try { 
 
System.out.println("Note (<-1:sortie) ?"); 
tnote=saisie.readLine(); 
note=Integer.parseInt(tnote); 
while(note>-1) { 
if(note>20) { 
while(note <-1 || note>20) { 
System.out.println("Erreur ! Note (-1:sortie) ?"); 
tnote=saisie.readLine(); 
note=Integer.parseInt(tnote); 
} 
} 
if(note>-1) { 
System.out.println("Note actuelle :"+note); 
System.out.println("Note (-1:sortie) ?"); 
tnote=saisie.readLine(); 
note=Integer.parseInt(tnote); 
} 
} 
 
} 
catch(Exception excp) { 
System.out.println("Erreur"); 
} 
} 
}
Cet algorithme montre qu’une simple répétition de saisie est plus complexe qu’il n’y parait. Au tout début l’utilisateur 
se voit poser une première fois la question, s’il répond "­1" tout de suite, il n’entre même pas dans la boucle. Dans la 
première boucle, une vérification est effectuée sur la validité de la note saisie : est­elle supérieure à 20 ? Si oui, alors 
il faut de nouveau effectuer une saisie, et reposer en boucle la question autant de fois que nécessaire, c’est­à­dire 
tant  que  la  note  saisie  n’est  pas  comprise  entre ­1  et  20.  Sachant  que  ­1  est  une  condition  de  sortie,  tous  les 
traitements, y compris la saisie d’une nouvelle note, ne doivent pas être effectués dans ce cas. Vous avez ici une très 
belle application d’un cas où un "break" aurait pu effectivement être utilisé. Voici un exemple (incomplet) qui remplace 
le dernier "Si" de l’algorithme précédent : 
... 
Tant que note>-1 Faire 
... 
Si note=-1 Alors 
break 
FinSi 
Ecrire "Entrez une note" 
Lire note 
FinTantQue
La boucle principale peut en effet être directement interrompue dès qu’une note de ­1 est rencontrée. Dans ce cas, il 
serait même possible d’aller plus loin en considérant la première boucle comme infinie et en effectuant dedans toutes 
les saisies et la condition de sortie : 
Variable note en Numérique 
Début 
Tant que VRAI Faire 
Ecrire "Entrez une note" 
Lire note 
- 7 -
© ENI Editions - All rigths reserved - Jonifar lina
79
Précédent

- 79/220

Suivant