You are on page 1of 6

Un Programa para Calcular el

Area de un Triangulo dados sus


3 Lados C++(Visual Studio)
hydrastudio99 (34) en spanish • hace 11 meses

Hola, continuando la practica de programación con C++ hoy mostrare


como hacer un Programa que calcule el Área de triangulo cuando el usuario
solo debe introducir la longitud de los 3 lados.

1 ) Para esto usaran la librerías estándar de c++ iostream, stdlib.h para usar
la funcion sistem ("pause") y math.h para realizar los cálculos matemáticos.

2 ) la Declaración de variables Para este ejercicio usaremos A, B, C, S, At;


te tipo float, para que el usuario pueda introducir la mayor cantidad de
datos posibles. donde A,B,C sera la longitud de cada uno de los 3 lados, S
será el semiperimetro y At area total.

3 ) le pedimos al usuario la información por pantalla con el comando "cout"


y lo guardamos en sus respectivas variables con el comando "cin".

4 ) el procedimiento sera el siguiente;


dados los 3 lados de un triangulo podemos calcular el semiperimetro y
luego calcular el Áre;
S = (A + B + C) * 1 / 2; ( semiperimetro )
At = sqrt((S(S - A))(S - B)*(S - C)); ( formula para calcular el área con el
semiperimetro )

5 ) mostrar la información al usuario.


el código lucirá así...

y luego de compilar se depura el programa y verificamos que no de errores


en la ejecución.
y Como pueden ver sin errores calculo el área.

Programando fórmula de Herón en C


(Obtener el área de un triángulo)
Descripción
Veamos como hacer un programa en C para obtener el área de un Triángulo en el caso de saber la
longitud de sus 3 lados, o de no saber la longitud de su altura.

Para poder obtener el área de un triángulo cuyo caso sea el que se menciono, se puede usar la
fórmula de Herón.

Fórmula de Herón.
La fórmula de herón se usa para hallar el área de un triángulo del cual se conocen sus todos sus
lados, el área se calcula a partir del semiperímetro (s) del triángulo de la longitud de sus lados (a, b y
c).

Siendo a, b y c los lados y s el semiperímetro

Las fórmulas anteriores en terminos de programación pueden ser escritas de la siguiente manera:

1 Area = sqrt(s * (s - a) * (s - b) * (s - c))


2
3 s = (a + b + c) / 2

Haciendo un buen uso de los operadores aritméticos y tomando en cuenta la prioridad en que se
ejecutan las operaciones el programa puede quedar tan sencillo como se muestra a continuación.

 Para poder usar la función sqrt (raíz cuadrada), es necesario incluir la librería math.h.
 También hacemos uso de printf y scanf para solicitar datos al usuario.
 Sabiendo que el resultado de una división o raíz cuadrada, no siempre da un número entero
utilizaremos float para definir todas las variables.

#include <stdio.h>
1
#include <math.h>
2
3
int main(){
4
float a, b, c; //lados del triangulo
5
printf("Programa que calcula el area de un triangulo.\n\n");
6
printf("Ingresa la longitud del lado 1: ");
7
scanf("%f", &a);
8
printf("Ingresa la longitud del lado 2: ");
9
scanf("%f", &b);
10
printf("Ingresa la longitud del lado 3: ");
11
scanf("%f", &c);
12
13
float s = (a + b + c) / 2;//formula de semiperimetro
14
float Area = sqrt(s * (s - a) * (s - b) * (s - c));//formula de
15
heron
16
17
printf("El area del triangulo es: %.3f", Area);
18
19
getch();
20
return 0;
21
}

Optimizando el programa.

#include <stdio.h>
1 #include <math.h>

2 /**
* Función que calcula el valor del semiperimetro (s)
3 * Parametros (Lados del triángulo) tipo float
*/
4 float CalculaSemiperimetro(float Lado1, float Lado2, float Lado3){
if(Lado1 != 0 & Lado2 != 0 & Lado3 != 0){
5 float S = (float)(Lado1 + Lado2 + Lado3) / 2;
return S;
6 }
}
7
/**
8 * Función que calcula el área de un triángulo con la formula de herón
* Parametros (Lados del triángulo) tipo float
9 */
1 float CalculaArea(float Lado1, float Lado2, float Lado3){
0 if(Lado1 != 0 & Lado2 != 0 & Lado3 != 0){
1 float S = CalculaSemiperimetro(Lado1, Lado2, Lado3);
1 float Area = 0;
1 //Comprobamos que los lados si corresponden a un tiángulo
2 if( S > Lado1 & S > Lado2 & S > Lado3){
1 Area = sqrt(S*(S-Lado1)*(S-Lado2)*(S-Lado3));
3 }
1 return Area;
4 }
1 }
5
1 int main(){
6 printf("Programa que calcula el Area de un triangulo utilizando la
1 formula de Heron.\n\n");
7 int i = 0;
1 float Lados[3];
8 for(i = 0; i < 3; i++){
1 printf("Ingresa la longitud del lado %i : ",i + 1);
9 scanf("%f", &Lados[i]);
2 }
0 float Area = CalculaArea(Lados[0], Lados[1], Lados[2]);
2 if(Area == 0){
1 printf("Los datos ingresados no corresponden a los lados de un
2 triangulo.");
2 }else{
2 printf("El Area del Triangulo cuyos lados fueron ingresados es:
3 %.3f", Area);
2 }
4 getch();
2 return 0;
5 }
2
6
2
7
2
8
2
9
3
0
3
1
3
2
3
3
3
4
3
5
3
6
3
7
3
8
3
9
4
0
4
1
4
2
4
3
4
4
4
5
4
6
4
7