domingo, 26 de febrero de 2023

Area de Trinagulo y Rectangulo y almacenar memoria

 ----POLIGONO

package operadores;

public abstract class Poligono {

protected int numeroLados;

public Poligono(int numeroLados) {

this.numeroLados = numeroLados;

}

public int getNumeroLados() {

return numeroLados;

}

public String toString() {

return "Poligono" + "lados=" + numeroLados;

}

public abstract double area();

}

---------RECTANGULO

package operadores;

public class Rectangulo extends Poligono {

private double lado1;

private double lado2;

public Rectangulo(double lado1, double lado2) {

super(2); // numero de lados seran 2

this.lado1 = lado1;

this.lado2 = lado2;

}

public double getLado1() {

return lado1;

}

public double getLado2() {

return lado2;

}

public String toString() {

return "Rectangulo:" + super.toString() + lado1 + lado2;

}

public double area() {

return lado1 * lado2;

}

}

------------TRIANGULO

package operadores;

public class Triangulo extends Poligono {

private double lado1;

private double lado2;

private double lado3;

public Triangulo(double lado1, double lado2, double lado3) {

super(3); // numero de lados seran 2

this.lado1 = lado1;

this.lado2 = lado2;

this.lado3 = lado3;

}

public double getLado1() {

return lado1;

}

public double getLado2() {

return lado2;

}

public double getLado3() {

return lado3;

}

public String toString() {

return "Triangulo:" + super.toString() + lado1 + lado2 + lado3;

}

public double area() {

double p = (lado1 + lado2 + lado3) / 2;

return Math.sqrt((p * (p - lado1) * (p - lado2) * (p - lado3)));

}

}

---------PRINCIPAL

package operadores;

import java.util.ArrayList;

import java.util.Scanner;

public class Principal {

static ArrayList<Poligono> poligono = new ArrayList<Poligono>();

static Scanner entrada = new Scanner(System.in);

public static void main(String[] args) {

llenarPoligono();

mostrarResultados();

}

public static void llenarPoligono() {

char respuesta;

int opcion;

do {

do {

System.out.println("Poligono: ");

System.out.println("1. Triangulo: ");

System.out.println("2. Rectangulo: ");

System.out.println("Opción: ");

opcion = entrada.nextInt();

} while (opcion < 1 || opcion > 2);

switch (opcion) {

case 1 :

llenarTriangulo();

break;

case 2 :

llenarRectangulo();

break;

}

System.out.print("Otro mas??? (s/n)");

respuesta = entrada.next().charAt(0);

} while (respuesta == 's' || respuesta == 'S');

}

public static void llenarTriangulo() {

double lado1, lado2, lado3;

System.out.print("Lado 1: ");

lado1 = entrada.nextDouble();

System.out.print("Lado 2: ");

lado2 = entrada.nextDouble();

System.out.print("Lado 3: ");

lado3 = entrada.nextDouble();

Triangulo triangulo = new Triangulo(lado1, lado2, lado3);

poligono.add(triangulo);

}

public static void llenarRectangulo() {

double lado1, lado2;

System.out.print("Lado 1: ");

lado1 = entrada.nextDouble();

System.out.print("Lado 2: ");

lado2 = entrada.nextDouble();

Rectangulo rectangulo = new Rectangulo(lado1, lado2);

poligono.add(rectangulo);

}

public static void mostrarResultados() {

for (Poligono poli : poligono) {

System.out.println(poli.toString());

System.out.println("Area= " + poli.area());

System.out.println("");

}

}

}




No hay comentarios:

Publicar un comentario