Calculando datos de un triángulo rectángulo/ Calculating data from a right-angled triangle | C++

avatar
(Edited)

¡Hey, hola! Hoy se me antojó compartirles un código sencillo que me tocó hacer en la universidad. Recalco que aún soy principiante en esto de la programación, seguramente habrá un camino más simple para hacer este ejercicio, pero en mi caso esto fue lo que se me ocurrió. ¡Espero que les agrade este post y sea de ayuda a quien lo necesite!


2.jpg


Bieeen, al final les dejaré el código completo. Empezamos con incluir las librerías que necesitaremos:

I'll leave you the full code at the end. We start by including the bookstores we'll need:

image.png

También usamos "using namespace std" para usar "cout y cin" sea más sencillo (pues tendremos que escribir menos código).

We also use "using namespace std" to make "cout and cin" easier to use (as we'll have to write less code).

Continuamos construyendo nuestro main y declarando las variables que necesitaremos, en este caso usé float porque su rango me parce suficiente para los cálculos para los que está destinado este programa. Sin embargo es importante recordar que este programa no tiene validaciones, por lo que se pueden presentar errores si se ingresan valores del tipo incorrecto para el programa en cuestión. Este código es algo viejo y ahora que lo veo les recomiendo iniciar las varibles con valor igual a 0, para evitar pequeños errores más adelante.

We continue building our main and declaring the variables we will need, in this case I used float because its range seems to me sufficient for the calculations for which this program is intended. However, it is important to remember that this program has no validations, so errors can occur if values of the wrong type are entered for the program in question. This code is a bit old and now that I see it I recommend you to start the varibles with a value equal to 0, to avoid small errors later on.

image.png

Ahora toca pedir los datos necesarios para los cálculos posteriores y almacenarlos en las variables correspondientes.

Now it is time to ask for the data needed for further calculations and store them in the corresponding variables.

image.png

Ahora la parte crucial, los cálculos de cada dato correspondiente. "sqrt" es para calcular la raíz cuadrada, "pow" es para la potenciación, "*" es para la multiplicación "/" para la división, "asin" es para calcular el seno inverso.

Now the crucial part, the calculations of each corresponding data. "sqrt" is for calculating the square root, "pow" is for potentiation, "*" is for multiplication "/" for division, "asin" is for calculating the inverse sine.

"*180/3.1415692" es para convertir el resultado del cálculo asignado a la variable "a1", pues lo dará en radianes y lo requerimos en "degree"

"*180/3.1415692" is to convert the result of the calculation assigned to the variable "a1", as it will give it in radians and we require it in "degree"

image.png

Ahora mostramos los datos calculados, cout.precision (3) es para que el resultado no sea reflejado con demasiados decimales sino con un número fijo, de manera que sea más manejable.

Now we show the calculated data, cout.precision (3) is so that the result is not reflected with too many decimals but with a fixed number, so that it is more manageable.

image.png

image.png

El programa culmina con "system("pause")" y el retorno de 0 como buena práctica de programación considerando que es un "int main". La ejecución del "pause" es para evitar que el programa se cierre una vez muestre los resultados.

The program ends with "system("pause")" and the return of 0 as a good programming practice considering that it is an "int main". The execution of the "pause" is to prevent the program from closing once the results are displayed.

image.png


Capturas durante la ejecución:

Captures during the execution

image.png

La "ñ" aparece con un carácter extraño por causa de que en inglés esta letra no está. Como este lenguaje está escrito en ese idioma es lógico que se muestre ese pequeño "error" si escribimos algo en español que incluya la "ñ".

The "ñ" appears with a strange character because in English this letter is missing. As this language is written in that language it is logical that this small "error" is shown if we write something in Spanish that includes the "ñ".


#include <iostream>
#include <math.h>
#include <cstdlib>

using namespace std;

int main () {

float base,altura,area,hipotenusa,a1,a2,a3=90,tperimetro;

cout<<"Ingrese la longitud de la altura/cateto opuesto del triangulo:\n\n";
cin>>altura;
cout<<"Ingrese la longitud de la base/cateto adyacente del triangulo:\n\n";
cin>>base;

hipotenusa= sqrt(pow(base,2)+pow(altura,2));
area= (base*altura)/2;
tperimetro= base+altura+hipotenusa;
a1=(asin(altura/hipotenusa))*180/3.1415692;
a2=90-a1;
cout.precision (3);
cout<<"El area del triangulo es:\n\n"<<area<<endl;
cout.precision (3);
cout<<"La longitud de la hipotenusa es:\n\n"<<hipotenusa<<endl;
cout.precision (3);
cout<<"El tamaño perimetrico es:\n\n"<<tperimetro<<endl;
cout.precision (3);
cout<<"El angulo 1 es:\n\n"<<a1<<endl;
cout.precision (3);
cout<<"El angulo 2 es:\n\n"<<a2<<endl;
cout.precision (3);
cout<<"El angulo 3 siempre es:\n\n"<<a3<<endl;

system("PAUSE");

return 0;
}       

Traducido en:
https://www.deepl.com/translator

Usé Dev-C++ para la compilación y ejecución del programa.



0
0
0.000