Correction des exercices
ANNEXE
328
Ici encore, dans une fonction véritable, il pourrait être judicieux de vérifier que la dimension
du tableau est au moins égale à 1.
Exercice 8.7
Ici, il nous faut prévoir dans la fonction une variable locale réelle rémanente pour y cumuler
les valeurs lues, ainsi qu’une variable locale rémanente entière pour les comptabiliser. Ces
deux variables devront être initialisées à zéro (0. pour la première, 0 pour la seconde) ; rappelons que cette initialisation n’a lieu qu’une seule fois avant le premier appel de la fonction.
réel fonction cumul
{ réel rémanent somme := 0.0 // ne pas oublier cette initialisation
entier rémanent nbVal := 0 // ni celle-ci
réel x
// variable locale utilisée pour lire une valeur
réel moyenne
// variable locale utilisée pour la moyenne
écrire «donnez un nombre réel : »
lire x
somme := somme + x
nbVal := nbVal + 1
moyenne := somme / nbVal
retourne moyenne
}
Chapitre 9
Exercice 9.1
Voici comment nous pouvons écrire la nouvelle méthode premQuad :
classe Point
{ .....
booléen méthode premQuad
{ booléen ok
si abs >= 0 et ord >=0 alors ok := vrai
sinon ok := faux
retourne ok
}
entier abs
entier ord
Notez que si l’instruction retourne accepte une expression, la méthode peut s’écrire plus
simplement :
booléen méthode premQuad
{ retourne (abs >= 0) et (ord >=0)
}
Voici un petit programme utilisant cette nouvelle classe Point :
Point p, q
p := Création Point
p.initialise (3, 5)
p.affiche
ANNEXE
328
Ici encore, dans une fonction véritable, il pourrait être judicieux de vérifier que la dimension
du tableau est au moins égale à 1.
Exercice 8.7
Ici, il nous faut prévoir dans la fonction une variable locale réelle rémanente pour y cumuler
les valeurs lues, ainsi qu’une variable locale rémanente entière pour les comptabiliser. Ces
deux variables devront être initialisées à zéro (0. pour la première, 0 pour la seconde) ; rappelons que cette initialisation n’a lieu qu’une seule fois avant le premier appel de la fonction.
réel fonction cumul
{ réel rémanent somme := 0.0 // ne pas oublier cette initialisation
entier rémanent nbVal := 0 // ni celle-ci
réel x
// variable locale utilisée pour lire une valeur
réel moyenne
// variable locale utilisée pour la moyenne
écrire «donnez un nombre réel : »
lire x
somme := somme + x
nbVal := nbVal + 1
moyenne := somme / nbVal
retourne moyenne
}
Chapitre 9
Exercice 9.1
Voici comment nous pouvons écrire la nouvelle méthode premQuad :
classe Point
{ .....
booléen méthode premQuad
{ booléen ok
si abs >= 0 et ord >=0 alors ok := vrai
sinon ok := faux
retourne ok
}
entier abs
entier ord
Notez que si l’instruction retourne accepte une expression, la méthode peut s’écrire plus
simplement :
booléen méthode premQuad
{ retourne (abs >= 0) et (ord >=0)
}
Voici un petit programme utilisant cette nouvelle classe Point :
Point p, q
p := Création Point
p.initialise (3, 5)
p.affiche
