Un numero decimal a grados minutos y segundos
Hola a todos los programadores tengo un problema con este programa.. porque no se como calcular los segundos para el numero real. espero que me puedan ayudar ya que solo puedo pasar del decimal a grados y minutos pero me faltan los segundos.. Aqui esta el programa para ver si me ayudan Gracias de antemano"!!!
#include<iostream.h>
#include<math.h>
void main()
{
char o;
double angulo , angulor, minu, minur, seg, segr, angulosa;
do{
cout<<"Introduce el angulo a calcular ";
cin>>angulo;
angulor=floor(angulo);
minu=(angulo-angulor);
minur=minu*30/0.5;
cout<<" "<<angulo<<" son "<<angulor<<" grados "<<minur<<" minutos " ;
cout<<endl;
cout<<"Desea repetir la operacion ";
cin>>o;
}
while(o=='s');
}
#include<iostream.h>
#include<math.h>
void main()
{
char o;
double angulo , angulor, minu, minur, seg, segr, angulosa;
do{
cout<<"Introduce el angulo a calcular ";
cin>>angulo;
angulor=floor(angulo);
minu=(angulo-angulor);
minur=minu*30/0.5;
cout<<" "<<angulo<<" son "<<angulor<<" grados "<<minur<<" minutos " ;
cout<<endl;
cout<<"Desea repetir la operacion ";
cin>>o;
}
while(o=='s');
}
Para los segundos haz algo como esto
anguloConMinutos = angulor + minur/60.0;
No sé si he escogido bien las variables. La idea es que cogas los grados y los minutos y recalcules el valor decimal. La diferencia entre el que al introducido y el que has recalculado, deben ser los segundos en decimal.
segundos = angulo - anguloConMinutos;
Y ahora los conviertes a segundos de verdad.
segundosr = segundos * 3600; // Un grado son 3600 segundos.
Bueno, no te puedo asegurar que esto esté bien del todo, pero espero que hayas cogido la idea.
Se bueno.
anguloConMinutos = angulor + minur/60.0;
No sé si he escogido bien las variables. La idea es que cogas los grados y los minutos y recalcules el valor decimal. La diferencia entre el que al introducido y el que has recalculado, deben ser los segundos en decimal.
segundos = angulo - anguloConMinutos;
Y ahora los conviertes a segundos de verdad.
segundosr = segundos * 3600; // Un grado son 3600 segundos.
Bueno, no te puedo asegurar que esto esté bien del todo, pero espero que hayas cogido la idea.
Se bueno.
