75 lines
2.1 KiB
Java
75 lines
2.1 KiB
Java
public class App {
|
|
public static void main(String[] args) throws Exception {
|
|
Triangolo triangolo = new Triangolo();
|
|
triangolo.lati = 3;
|
|
triangolo.misure[0] = 3.0;
|
|
triangolo.misure[1] = 4.0;
|
|
triangolo.misure[2] = 5.0;
|
|
System.out.println("Numero di lati: " + triangolo.lati);
|
|
System.out.println("Lunghezza lato 1: " + triangolo.misure[0]);
|
|
System.out.println("Lunghezza lato 2: " + triangolo.misure[1]);
|
|
System.out.println("Lunghezza lato 3: " + triangolo.misure[2]);
|
|
System.out.println("Perimetro: " + triangolo.perimetro());
|
|
System.out.println("Semiperimetro: " + triangolo.semiperimetro());
|
|
System.out.println("Area: " + triangolo.area());
|
|
}
|
|
}
|
|
class Poligono {
|
|
public int lati = 3;
|
|
public double[] misure = new double[lati];
|
|
public double perimetro() {
|
|
int sum = 0;
|
|
for (int i = 0; i < lati; i++) {
|
|
sum += misure[i];
|
|
}
|
|
return sum;
|
|
}
|
|
public double semiperimetro() {
|
|
return perimetro()/2;
|
|
}
|
|
}
|
|
class Triangolo extends Poligono {
|
|
public double area() {
|
|
double a = misure[0];
|
|
double b = misure[1];
|
|
double c = misure[2];
|
|
double p = semiperimetro();
|
|
double result = p*(p-a)*(p-b)*(p-c);
|
|
return Math.sqrt(result);
|
|
}
|
|
}
|
|
class Rettangolo extends Poligono {
|
|
private double latolungo() {
|
|
double roba = 0;
|
|
for (int i = 0; i < 4; i++) {
|
|
if (misure[i] > roba) {
|
|
roba = misure[i];
|
|
}
|
|
}
|
|
return roba;
|
|
}
|
|
private double latocorto() {
|
|
double roba = Double.MAX_VALUE;
|
|
for (int i = 0; i < 4; i++) {
|
|
if (misure[i] < roba) {
|
|
roba = misure[i];
|
|
}
|
|
}
|
|
return roba;
|
|
}
|
|
public double area() {
|
|
return latolungo()*latocorto();
|
|
}
|
|
}
|
|
class Quadrato extends Poligono {
|
|
public double area() {
|
|
return misure[0]*misure[0];
|
|
}
|
|
}
|
|
class Pentagono extends Poligono {
|
|
public double area(double lato) {
|
|
double constarea = 1.72;
|
|
return misure[0]*misure[0]*constarea;
|
|
}
|
|
}
|