Correction des exercices
ANNEXE
332
r2 := Création Rectangle (1.5, 5.)
écrire «le second rectangle a pour périmètre », r2.périmètre
r2.agrandit (10.)
écrire «le second rectangle a maintenant pour périmètre », r2.périmètre
le premier rectangle a pour surface 1.0
le premier rectangle a maintenant pour surface 6.25
le second rectangle a pour périmètre 13.
le second rectangle a maintenant pour périmètre 130.
Exercice 9.5
Voici une façon d’implémenter la classe Réservoir .
classe Réservoir
{ méthode Reservoir (entier cap)
{ capacite := cap ; niveau := 0 }
entier méthode verse (entier q)
{ entier ajout
// variable locale servant à déterminer la quantité ajoutable
entier disponible := capacité-niveau
si q <= disponible alors ajout := q
sinon ajout := disponible
niveau := niveau + ajout
retourne ajout
}
entier méthode puise (entier q)
{ entier enlève
// variable locale servant à déterminer la quantité enlevable
si q <= niveau alors enlève := q
sinon enlève := niveau
niveau := niveau - q
retourne enlève
}
entier méthode jauge { retourne niveau }
entier capacité, niveau
}
À titre indicatif, voici un petit programme d’utilisation, accompagné des résultats qu’il
fournit :
Réservoir r1
r1 := Création Réservoir(15)
écrire r1.jauge
écrire r1.verse (20)
écrire r1.puise (2)
écrire r1.jauge ;
0
15
2
13
ANNEXE
332
r2 := Création Rectangle (1.5, 5.)
écrire «le second rectangle a pour périmètre », r2.périmètre
r2.agrandit (10.)
écrire «le second rectangle a maintenant pour périmètre », r2.périmètre
le premier rectangle a pour surface 1.0
le premier rectangle a maintenant pour surface 6.25
le second rectangle a pour périmètre 13.
le second rectangle a maintenant pour périmètre 130.
Exercice 9.5
Voici une façon d’implémenter la classe Réservoir .
classe Réservoir
{ méthode Reservoir (entier cap)
{ capacite := cap ; niveau := 0 }
entier méthode verse (entier q)
{ entier ajout
// variable locale servant à déterminer la quantité ajoutable
entier disponible := capacité-niveau
si q <= disponible alors ajout := q
sinon ajout := disponible
niveau := niveau + ajout
retourne ajout
}
entier méthode puise (entier q)
{ entier enlève
// variable locale servant à déterminer la quantité enlevable
si q <= niveau alors enlève := q
sinon enlève := niveau
niveau := niveau - q
retourne enlève
}
entier méthode jauge { retourne niveau }
entier capacité, niveau
}
À titre indicatif, voici un petit programme d’utilisation, accompagné des résultats qu’il
fournit :
Réservoir r1
r1 := Création Réservoir(15)
écrire r1.jauge
écrire r1.verse (20)
écrire r1.puise (2)
écrire r1.jauge ;
0
15
2
13
