Colocviu POO 2015-2016
De la WikiLabs
Versiunea din 14 ianuarie 2016 14:04, autor: Rhobincu (discuție | contribuții)
Să se scrie o clasă seriaf.poo.colocviu.Point3D care să stocheze coordonatele unui punct în spațiul tri-dimensional în virgulă mobilă cu dublă precizie.
Reguli suplimentare:
- Clasa
Point3Dtrebuie să aibă un constructor cu 3 argumente de tip double: x, y și z - Clasa
Point3Dtrebuie să aibă o metodădouble getEuclidianDistance(Point3D anotherPoint)care să calculeze distanța euclidiană între punctul curent și punctul primit ca argument. - Clasa
Point3Dtrebuie să aibă o metodădouble getManhattanDistance(Point3D anotherPoint)care să calculeze distanța Manhattan între punctul curent și punctul primit ca argument.
Să se scrie o clasă seriaf.poo.colocviu.Triangle care să stocheze date referitoare la un triunghi.
Reguli suplimentare:
- Clasa
Triangletrebuie să aibă un constructor cu 3 argumente de tipPoint3Dce reprezintă vârfurile triunghiului. Dacă oricare două puncte se suprapun, sau dacă punctele sunt colineare, se va arunca o excepție de tipIllegalArgumentExceptioncu mesajul “Punctele nu formeaza un triunghi”. - Clasa
Triangletrebuie să aibă trei metode:boolean isEquilateral(),boolean isIsosceles()șiboolean isRightAngled()care să întoarcătruedacă triunghiul este echilateral, isoscel sau respectiv dreptunghic.
ATENȚIE: Două numere de tip double se consideră egale dacă diferența dintre ele, în modul, este mai mică decât 0.0001.
Să se scrie o clasă seriaf.poo.colocviu.Main, executabilă, care folosindu-se de un obiect de tip java.util.Scanner să citească 9 valori de tip double dintr-un fișier specificat ca prim argument la execuție, și folosindu-se de clasele de mai sus să afișeze:
- "Triunghiul este echilateral. " dacă este echilateral
- "Triunghiul este isoscel. " dacă este isoscel
- "Triunghiul este dreptunghic.\n" dacă este dreptunghic
Vezi clasa java.lang.Math.