Dado el valor del lado en un triángulo equilátero, haga un algoritmo que obtenga el
perímetro, el valor de la altura y el área del triángulo.
#include <iostream>
//Se incluye la clase Triangulo para despues llamar a sus metodos
#include "Triangulo.h"
using namespace std;
int main(void)
{
//Se crea un objeto de la clase Triangulo (Instanciaciación)
Triangulo *obj = new Triangulo();
float l;//se define la variable l de tipo float
//se pide el lado del triangulo
cout << "Digite lado del triangulo equilatero: " << endl;
cin >> l;//se guarda el lado en la variable l
obj->setLado(l);//se encapsula la variable l
//se muestra el perimetro
cout << "El perimetro es: " << obj->perimetro() << endl;
//se muestra el area
cout << "El area es: " << obj->area() << endl;
//se muestra la altura
cout << "La altura es: " << obj->altura() << endl;
}
#ifndef TRIANGULO_H
#define TRIANGULO_H
class Triangulo
{
public:
Triangulo();//metodo constructor
virtual ~Triangulo();//metodo destructor
//Se definen los metodos publicos:
float perimetro();//perimetro() de tipo float
float area();//area() de tipo float
float altura();//altura() de tipo float
//Se definen los metodos Setters y Getters del atributo lado
void setLado(float val);
float getLado();
protected:
private:
float lado;
};
#endif // TRIANGULO_H
#include "Triangulo.h"
//se incluira la libreria "math.h" para utilizar el metodo sqrt()
//y poder realizar la raiz cuadrada, ya que es importante para calcular
//el area, perimetro y altura del triangulo.
#include "math.h"
Triangulo::Triangulo()
{
//se le asigna 0 a "lado" en el constructor
lado = 0;
}
Triangulo::~Triangulo()
{
//dtor
}
//implementacion metodo perimetro()
float Triangulo::perimetro()
{
//el perimetro de un triangulo es multiplicar su lado 3 veces
return 3 * lado;
}
//existe un metodo que puede calcular la raiz cuadrada de un numero, esta en la clase
//"math.h" y se llama sqrt() solo se debe asignar como parametro el numero a calcular
//dentro del metodo.
//existe otro metodo para elevar numeros, en este caso queremos elevar lado a la 2.
//utilizaremos el metodo pow(), de la clase "math.h", solo se debe ingresar como
//parametro el numero que se va a elevar seguido de una coma con el numero al que se
//elevara. La función pow retorna el resultado de lado^2.
float Triangulo::area()
{
//para calcular el area se debe utilizar la siguiente formula:
// √3/4 * lado^2 (raiz cuadrada de 3 sobre 4, por el lado elevado a la 2).
return sqrt(3) / 4 * pow(lado, 2);
}
//Implementacion del metodo altura()
float Triangulo::altura()
{
//para calcular la altura se debe sacar la raiz de 3 por el lado entre 2
// √3*lado/2
return sqrt(3 * lado) / 2;
}
//Se implemetan los metodos Setters y Getters del atributo lado
void Triangulo::setLado(float val)
{
//a lado se le asigna val
lado = val;
}
float Triangulo::getLado()
{
//se retorna lado
return lado;
}
//Se importa paquete "JOptionPane" para dibujar un cuadro de dialogo en pantalla
//que muestre información o para llenar información.
import javax.swing.JOptionPane;
public class Main
{
public static void main(String[] args)
{
//Se crea un objeto de la clase Triangulo (Instanciaciación)
Triangulo obj = new Triangulo();
//se pide el lado del triangulo y se guarda en la variable l
double l = Double.parseDouble(JOptionPane.showInputDialog(null, "Digite lado del triangulo: "));
obj.setLado(l);//se encapsula la variable "l"
//se muestra el perimetro del triangulo
JOptionPane.showInputDialog(null, "Perimetro del triangulo: " + obj.perimetro());
//se muestra el area del triangulo
JOptionPane.showInputDialog(null, "Area del triangulo: " + obj.area());
//se muestra la altura del triangulo
JOptionPane.showInputDialog(null, "Altura del triangulo: " + obj.altura());
}
}
import static java.lang.Math.pow;
import static java.lang.Math.sqrt;
public class Triangulo
{
public Triangulo()
{
//se le asigna 0 a la variable lado en el constructor de la clase Triangulo
lado = 0;
}
//Se define el atributo "lado" de tipo double
private double lado;
//implementacion metodo perimetro()
public double perimetro()
{
//el perimetro de un triangulo es multiplicar su lado 3 veces
return 3 * lado;
}
//existe un metodo que puede calcular la raiz cuadrada de un numero, esta en el paquete
//Math de java, se llama sqrt() solo se debe asignar como parametro el numero a calcular
//dentro del metodo.
//existe otro metodo para elevar numeros, en este caso queremos elevar lado a la 2.
//utilizaremos el metodo pow(), del paquete Math de java, solo se debe ingresar como
//parametro el numero que se va a elevar seguido de una coma con el numero al que se
//elevara. La función pow retorna el resultado de lado^2.
public double area()
{
//para calcular el area se debe utilizar la siguiente formula:
// √3/4 * lado^2 (raiz cuadrada de 3 sobre 4, por el lado elevado a la 2).
return sqrt(3) / 4 * pow(lado, 2);
}
//Implementacion del metodo altura()
public double altura()
{
//para calcular la altura se debe sacar la raiz de 3 por el lado entre 2
// √3*lado/2
return sqrt(3 * lado) / 2;
}
//Se implemetan los metodos Setters y Getters del atributo lado
public void setLado(double val)
{
//a lado se le asigna val
lado = val;
}
public double getLado()
{
//se retorna lado
return lado;
}
}