Opérateurs > Opérateurs de programmation > Exemple : Utilisation de l'opérateur de programmation par approximations successives
  
Exemple : Utilisation de l'opérateur de programmation par approximations successives
Utilisez les opérateurs de programmation try-on-error, break, continue et return pour gérer les conditions d'erreur.
1. Sous l'onglet Mise en forme mathématique, dans le groupe Résultats, cliquez sur Afficher les zéros à droite.
2. Définissez une matrice 6x6, puis utilisez la fonction matrix afin de définir ses éléments sur une valeur connue.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
3. Ecrivez un programme afin de définir une plage d'éléments sur une valeur définie par une fonction sur la plage donnée.
Cliquez pour copier cette expression
Le programme échoue car, lorsque x=0 et y=0, il essaie de diviser (x+y) par zéro.
4. Modifiez le programme de sorte que l'élément (0,0) de la nouvelle matrice prenne la valeur de l'élément correspondant de la matrice Z au lieu de la valeur de division par zéro.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Le programme s'assure que l'élément (0,0) ne peut pas être défini à une valeur de division par zéro.
5. Utilisez les opérateurs try et break pour capturer la condition d'erreur et autoriser l'exécution du programme. La condition d'erreur, diviser par zéro, est représentée par la chaîne "DBZ".
Cliquez pour copier cette expression
Le bloc on error n'est exécuté que si le test d'essai renvoie une erreur.
Cliquez pour copier cette expression
Mathcad exécute le programme de la manière suivante :
a. La première boucle commence par x=0 et y=0.
b. L'opérateur try recherche les erreurs dans l'expression et trouve une erreur "diviser par zéro". Cette erreur indique au programme d'exécuter le bloc on error.
c. Le bloc on error exécute sa première instruction et définit l'élément (0,0) sur "DBZ", puis l'opérateur break arrête l'exécution de la boucle courante (x=0, y=0..5). Par conséquent, les autres éléments restants row=0 restent inchangés.
d. Le programme passe à la boucle x suivante (x=1, y=0..5) et, en l'absence d'autres erreurs, écrit les éléments row=1.
e. Le programme se poursuit et exécute les boucles restantes jusqu'à ce qu'il couvre les plages spécifiées.
6. Remplacez l'opérateur break par l'opérateur continue et observez le résultat différent qui en découle.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
A la différence de l'opérateur break, l'opérateur continue continue jusqu'à l'itération suivante de la boucle courante et les éléments restants row=0 ainsi que les éléments restants de la matrice sont définis sur (x+y)/(10x-y) comme auparavant.
7. Remplacez l'opérateur continue par l'opérateur return et observez le résultat différent qui en découle.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
A la différence de l'opérateur continue, qui poursuit l'exécution de la boucle courante, l'opérateur return interrompt le programme et renvoie Y3 avec l'élément (0, 0) défini sur "DBZ".