Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Convertir numeros reales a grados, minutos, segundos (https://www.clubdelphi.com/foros/showthread.php?t=94404)

ecfisa 28-01-2020 19:13:31

Hola.

Cita:

Empezado por compuin (Mensaje 535361)
Si, ha sido de mucha ayuda aunque la funcion que me dio para convertir los numeros reales a formato hora, minuto segundo no me funciona correctamente

El valor a convertir es 7.8203608719

me resulta 7h 49' 13"

siendo 12h 16' 56" el valor correcto

Cita:

Empezado por compuin (Mensaje 535403)
Finalmente puse la function de esta manera y se corrigio el problema

Código Delphi [-]
function TimeToStr(angle:extended):string;
var
  d : integer;
  m, s : extended;
begin
  d:= Trunc(angle);
  m:= abs(frac(angle)*60);
  s:= Round(abs(frac(m)*60));
  Result:= format('%dh %d'' %d"',[d, trunc(m), trunc(s)]);
end;

Esa función dará el mismo resultado que la que te indicaron anteriormente: 7 - 49 - 13. De ningún modo obtendrás el resultado 12 - 16 - 56 a partir del valor 7.8203608719 con ella.

Saludos :)

compuin 28-01-2020 19:14:32

Cita:

Empezado por ecfisa (Mensaje 535413)
Hola.




Esa función dá el mismo resultado que la que te indicaron anteriormente: 7h 49' 13". De ningún modo obtendrás el valor 12h 16' 56" a partir de 7.8203608719 con ella.

Saludos :)

Una pregunta, la conversion que hace esta funcion es de que tipo (Radiantes, enteros, grados etc) ??

ecfisa 28-01-2020 20:42:11

Hola.

Convierte un valor del sistema decimal al sistema sexagesimal.

Saludos :)


La franja horaria es GMT +2. Ahora son las 23:10:26.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi