elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda razones trigonométricas C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda razones trigonométricas C++  (Leído 1,001 veces)
Bob1098

Desconectado Desconectado

Mensajes: 87


Ver Perfil
Duda razones trigonométricas C++
« en: 7 Abril 2014, 17:52 pm »

Hola buenas. Estaba practicando un poco de trigonometría haciendo un simple programa de C++ que te pide un angulo y el cateto opuesto, y calcula la hipotenusa de un triángulo rectágulo. Funciona bien y parece darme el resultado, pero hay veces que sale negativo =S.
Código:
#include <iostream>
#include <cmath>

using namespace std;

int main() {
float A, co, h;

cout << "Introduce el angulo y el cateto opuesto: ";
cin >> A;
cin >> co;

h = co / (sin(A));
cout << "La hipotenusa es: " << h;
cin.get();

return 0;
}

No sé, yo creo que está bien pero si alguien me pudiera explicar el por qué de un resultado negativo...

Gracias de antemano.


En línea

eferion


Desconectado Desconectado

Mensajes: 1.248


Ver Perfil
Re: Duda razones trigonométricas C++
« Respuesta #1 en: 7 Abril 2014, 17:54 pm »

Pondrás valores de ángulo menores de 90º, no??

Por otro lado, "sin" funciona con radianes, no con grados. Tienes que aplicar la conversión A*PI/180 para pasar los grados a radianes.


En línea

noele1995

Desconectado Desconectado

Mensajes: 137



Ver Perfil
Re: Duda razones trigonométricas C++
« Respuesta #2 en: 7 Abril 2014, 19:56 pm »

-Bueno el seno oscila entre 1 y -1 por lo tanto puede devolver tanto positivo como negativo:



Posible solucion: utilizar valor absoluto
Código
  1. x = abs(x);

-Atento a lo que dijo eferion sobre las unidades porque el angulo nunca puede ser mayor de 90 en un triangulo rectangulo y siempre deberia ser positivo el seno,es por lo que te sale negativo.

Saludos
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
funciones trigonometricas
Programación Visual Basic
Gokuman 2 1,779 Último mensaje 22 Abril 2008, 18:53 pm
por Gokuman
¿Por que razones no se asigna memoria?
Programación C/C++
do-while 2 3,726 Último mensaje 24 Noviembre 2010, 00:21 am
por do-while
Razones trigonometricas(C++) « 1 2 »
Programación C/C++
Danyel_Casvill 12 10,753 Último mensaje 12 Junio 2011, 22:37 pm
por Danyel_Casvill
Ayuda con Matematicas ( Limite de Identidades Trigonometricas)
Dudas Generales
lpnu 8 7,966 Último mensaje 20 Octubre 2011, 06:44 am
por xdeadpoolx
Ayuda con el siguiente programa.
Programación C/C++
padiuwu 7 1,263 Último mensaje 3 Septiembre 2018, 15:48 pm
por Serapis
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines