Cas particulier: les conditions de sortie multiples non exclusives
Objectif:  Vérifier quelle(s) condition(s) a (ont) provoqué la sortie de l'itérative.

Exemple (extrait de l'algorithme):

Un jeu où l'utilisateur doit essayer de trouver un prix. L'utilisateur a 10 essais possibles, pour chaque essai le programme affiche si le juste prix est inférieur ou supérieur au prix qu'il a donné


Corps de l'algorithme détaillé:
  do
     demander("Maitre du jeu donnez le juste prix:", justePrix);
   while (justePrix <= 0);
                                               
/* traitement des valeurs incorrectes pour justePrix */
  do
    {
     nbEssai = nbEssai +1;

     demander("Donnez un prix", prixEssai);
     if (prixEssai < justePrix)
        afficher("C'est plus");
     else
         if (prixEssai >  justePrix)
            afficher("C'est moins");
            /* fin du if (prixEssai > justePrix) */
    /* fin du if (prixEssai < justePrix) */
   }
  while (nbEssai != 10 && justePrix != prixEssai);  
/* on sort si nbEssai est égal à 10 ou justePrix est égal à prixEssai */
  /* maintenant il faut savoir pourquoi on est sorti de l'itérative */
  if (prixEssai = = justePrix)
     afficher("Bravo, vous avez trouvé le juste prix");

  else /* on est dans le cas ou nbEssai est égal à 10 et justePrix != prixEssai */
     afficher("Désolé vous avez perdu");
   /* fin du if   (prixEssai = = justePrix) */
/* fin du programme */
Remarque: On ne peut pas inverser le test. D'abord tester si nbEssai = = 10 car on afficherait  "perdu" alors qu'il peut avoir gagné au dixième essai.
suivant        plan