programmation Java (école d'ingénieur) · Chapitre 7 · Application directe du cours
Une classe Rectangle
Classes et objets · niveau 1 (application)
Énoncé
Écrire une classe Rectangle ayant deux attributs réels largeur et hauteur, un constructeur à deux paramètres, et les méthodes aire(), perimetre(), estCarre() et toString(). Écrire un programme qui crée un rectangle et un carré de côté , et affiche pour chacun son aire, son périmètre et s'il est carré.
Corrigé
Les attributs portent les dimensions ; les méthodes s'en déduisent.
class Rectangle {
double largeur, hauteur;
Rectangle(double largeur, double hauteur) {
this.largeur = largeur;
this.hauteur = hauteur;
}
double aire() { return largeur * hauteur; }
double perimetre() { return 2 * (largeur + hauteur); }
boolean estCarre() { return largeur == hauteur; }
@Override
public String toString() { return "Rectangle " + largeur + " x " + hauteur; }
}
public class Ex1Rectangle {
public static void main(String[] args) {
Rectangle r = new Rectangle(3, 5);
Rectangle c = new Rectangle(4, 4);
for (Rectangle x : new Rectangle[] {r, c}) {
System.out.println(x + " : aire " + x.aire() + ", périmètre " + x.perimetre()
+ (x.estCarre() ? ", carré" : ""));
}
}
}
Rectangle 3.0 x 5.0 : aire 15.0, périmètre 16.0
Rectangle 4.0 x 4.0 : aire 16.0, périmètre 16.0, carré
Les deux rectangles ont le même périmètre mais pas la même aire : à périmètre donné, c'est le carré qui a la plus grande aire. La comparaison largeur == hauteur sur des réels est ici sans danger, car les valeurs sont saisies telles quelles et non calculées.
100 % gratuit
La suite du chapitre est sur Adloun
- 10 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le podcast et la vidéo du chapitre : 2 minutes d'écoute sans compte
- Le tuteur, qui guide pas à pas sans donner la réponse
Sans compte : le cours, le premier QCM et 2 minutes de podcast et de vidéo. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.