Autor Tema: Ejercicio resuelto aplicación web en Java JSP mostrar área y perímetro triángulo  (Leído 838 veces)

jonatthan23

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 11
    • Ver Perfil
Hola amigos, ahora estoy haciendo una aplicación web en java y estoy atorado, me debe mostrar el área y el perímetro de un triangulo,  no me muestra el perímetro de un triangulo, si me muestra el área pero el perímetro no, dejo el código.

Muchas gracias.

Esta es la clase java

Código: [Seleccionar]
package calculos;

/**
 *
 * @author Jon
 */
public final class Triangulo {
   
    private int base;
    private int altura;
    private int area;
    private int perimetro;
   
   
    public Triangulo(String n1, String n2)
    {
        this.setBase(Integer.parseInt(n1));
        this.setAltura(Integer.parseInt(n2));
    }
   
    public void sacarArea()
    {
        int t=this.getBase()*getAltura()/2;
        this.setArea(t);
    }
   
     public void sacarPerimetro()
    {
        int p=this.getBase()+getBase()+getBase();
        this.setPerimetro(p);
    }
   
    public int getBase(){
        return base;
    }
   
    public void setBase(int base){
        this.base = base;
    }
   
    public int getAltura(){
        return altura;
    }
   
     public void setAltura(int altura){
        this.altura = altura;
    }
     
     public int getArea(){
        return area;
    }
   
     public void setArea(int area){
        this.area = area;
    }
     
     public int getPerimetro(){
        return perimetro;
    }

    private void setPerimetro(int perimetro) {
        this.perimetro = perimetro;
    }
 
}


Este es el JSP

Código: [Seleccionar]
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="calculos.Triangulo" %>
<!DOCTYPE html>

    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
   
        <h1>Área Triángulo</h1>
        <%
            String n1=request.getParameter("base");
            String n2=request.getParameter("altura");
                     
            Triangulo t=new Triangulo(n1,n2);
            t.sacarArea();
            int area=t.getArea();
           
            Triangulo p=new Triangulo(n1,n2);
            t.sacarPerimetro();
            int perimetro=p.getPerimetro();
        %>
       
        <%=area%>
       
        <h2>Perímetro Triángulo</h2>
       
        <%=perimetro%>


Este es el index:

Código: [Seleccionar]
<html>
    <head>
        <title>TODO supply a title</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
    </head>
    <body>
        <div>Área Triángulo
            <form action="Areajsp.jsp" method="post">
                Base:<br>
                <input type="text" name="base" value=""><br>
                Altura:<br>
                <input type="text" name="altura" value=""><br><br>
                <input type="submit" value="Area">
            </form>               
        </div>
    </body>
</html>
« Última modificación: 28 de Octubre 2020, 14:27 por Ogramar »

Kabuto

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 737
    • Ver Perfil
Re:Ejercicio Aplicación web en Java JSP mostrar área y perímetro triángulo
« Respuesta #1 en: 11 de Septiembre 2020, 15:20 »
Hola.
No se porque usas dos objetos Triangulo.
Entiendo que con uno ya te sirve para calcular área y perímetro.
Y así además, te habrías evitado este error, que es el motivo de que no obtengas perímetro:

Citar
<%
            String n1=request.getParameter("base");
            String n2=request.getParameter("altura");
                     
            Triangulo t=new Triangulo(n1,n2);
            t.sacarArea();
            int area=t.getArea();
           
            Triangulo p=new Triangulo(n1,n2);
            t.sacarPerimetro(); //Calculas el perímetro en el triángulo t
            int perimetro=p.getPerimetro(); //Pero luego pides resultado a p, que no ha hecho ningún cálculo
        %>

Si vas a usar dos triángulos, ha de pedirle a p que calcule el perímetro.
Pero vamos, que con un único triángulo podrías hacer ambos cálculos.

Un saludo.
NO respondo dudas por mensaje privado
Publicando vuestras dudas en el foro público conseguimos:
- Que más gente aporte respuestas mejores o complementarias.
- Que otras personas puedan aprender de vuestras dudas.

Mejor en PÚBLICO que en privado. Gracias

jonatthan23

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 11
    • Ver Perfil
Re:Ejercicio Aplicación web en Java JSP mostrar área y perímetro triángulo
« Respuesta #2 en: 12 de Septiembre 2020, 07:34 »
Hola, muchas gracias, ya quedó funcionando.
« Última modificación: 28 de Octubre 2020, 14:27 por Ogramar »

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".