programmation Java (école d'ingénieur) · Chapitre 7 · Application directe du cours
Cercles et points
Classes et objets · niveau 2
Énoncé
Reprendre une classe Point munie d'un constructeur et d'une méthode distance(Point p). Écrire une classe Cercle dont les attributs sont un point centre et un réel rayon, avec :
- une méthode
contient(Point p)qui dit sipest dans le disque (bord compris) ; - une méthode
intersecte(Cercle c)qui dit si les deux disques ont au moins un point commun.
Tester avec le cercle de centre et de rayon , les points et , et les cercles de centre et de rayons et .
Corrigé
Un cercle contient un autre objet : son centre. Pour tester qu'un point est dans le disque, on compare sa distance au centre au rayon ; deux disques se rencontrent si la distance de leurs centres ne dépasse pas la somme de leurs rayons.
class Point {
double x, y;
Point(double x, double y) {
this.x = x;
this.y = y;
}
double distance(Point p) {
double dx = x - p.x, dy = y - p.y;
return Math.sqrt(dx * dx + dy * dy);
}
}
class Cercle {
Point centre;
double rayon;
Cercle(Point centre, double rayon) {
this.centre = centre;
this.rayon = rayon;
}
boolean contient(Point p) {
return centre.distance(p) <= rayon;
}
boolean intersecte(Cercle c) {
return centre.distance(c.centre) <= rayon + c.rayon;
}
}
public class Ex5Cercle {
public static void main(String[] args) {
Cercle c1 = new Cercle(new Point(0, 0), 5);
Cercle c2 = new Cercle(new Point(8, 0), 2);
Cercle c3 = new Cercle(new Point(8, 0), 4);
System.out.println(c1.contient(new Point(3, 4)));
System.out.println(c1.contient(new Point(4, 4)));
System.out.println(c1.intersecte(c2) + " " + c1.intersecte(c3));
}
}
true
false
false true
Le point est à distance du centre, donc sur le bord ; est à distance , donc dehors. Les centres sont à distance : , les deux premiers disques sont disjoints ; , les deux autres se rencontrent. Remarquer l'expression centre.distance(c.centre) : on appelle une méthode de l'objet centre, en lui passant le centre de l'autre cercle.
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.