Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Evidencias de Practica: Verificación de Triagulo

Hola, les comparto mi codigo para esta practica del curso. Sé que se puede hacer de maneras más simples, pero mi intención es aprovechar para poner en practica también lo visto de clases y paquetes.

Clase Triangulo

package com.aluracursos.practicandojava.practicas;

public class Triangulo {

    //atributos
    private boolean esTriangulo;
    private double ladoA;
    private double ladoB;
    private double ladoC;

    //metodos

    public void verificaTriangulo(){
        if((this.ladoA + this.ladoB) > this.ladoC){
            this.esTriangulo = true;
        } else {
            this.esTriangulo = false;
        }
    }

    public void responde(){
        verificaTriangulo();
        if(esTriangulo){
            System.out.println("Los lados SI pueden formar un triangulo");
        }else {
            System.out.println("Los lados NO pueden formar un triangulo");
        }
    }

    public void setLados(double ladoA, double ladoB, double ladoC){
        setLadoA(ladoA);
        setLadoB(ladoB);
        setLadoC(ladoC);
    }

    public boolean isEsTriangulo() {
        return esTriangulo;
    }

    public void setEsTriangulo(boolean esTriangulo) {
        this.esTriangulo = esTriangulo;
    }

    public double getLadoA() {
        return ladoA;
    }

    public void setLadoA(double ladoA) {
        this.ladoA = ladoA;
    }

    public double getLadoB() {
        return ladoB;
    }

    public void setLadoB(double ladoB) {
        this.ladoB = ladoB;
    }

    public double getLadoC() {
        return ladoC;
    }

    public void setLadoC(double ladoC) {
        this.ladoC = ladoC;
    }
}

Clase Principal

package com.aluracursos.practicandojava.pruebas;

import com.aluracursos.practicandojava.practicas.*;

import java.util.Scanner;

public class Principal {
    public static void main(String[] args) {

        Scanner teclado = new Scanner(System.in);
        //Verificacion de Triangulo
         Triangulo triangulo = new Triangulo();
        double ladoA;
        double ladoB;
        double ladoC;

        System.out.println("Ingresa el Primer lado: ");
        ladoA = teclado.nextDouble();
        System.out.println("Ingresa el Segundo lado: ");
        ladoB = teclado.nextDouble();
        System.out.println("Ingresa el Tercer lado: ");
        ladoC = teclado.nextDouble();

        triangulo.setLados(ladoA,ladoB, ladoC);
        triangulo.responde();

    }
}

Gracias!

1 respuesta

Hola Elvia,

¡Gracias por compartir tu código! Estás en el camino correcto al implementar la lógica para verificar si tres lados pueden formar un triángulo. Sin embargo, hay un pequeño detalle en la lógica de verificación de triángulos. Para que tres lados formen un triángulo, no solo la suma de dos lados debe ser mayor que el tercer lado, sino que esto debe ser cierto para cada combinación de dos lados. Es decir, debes verificar lo siguiente:

  1. ladoA + ladoB > ladoC
  2. ladoA + ladoC > ladoB
  3. ladoB + ladoC > ladoA

Aquí tienes una sugerencia de cómo podrías ajustar el método verificaTriangulo para incluir estas verificaciones:

public void verificaTriangulo() {
    if ((this.ladoA + this.ladoB > this.ladoC) &&
        (this.ladoA + this.ladoC > this.ladoB) &&
        (this.ladoB + this.ladoC > this.ladoA)) {
        this.esTriangulo = true;
    } else {
        this.esTriangulo = false;
    }
}

Con este ajuste, tu programa debería funcionar correctamente para verificar si los lados pueden formar un triángulo. Espero que esto te ayude a avanzar con tu práctica. ¡Sigue así!

Espero haber ayudado y buenos estudios!