Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Mostrar cifras completas y rellenar con 00 (https://www.clubdelphi.com/foros/showthread.php?t=94623)

compuin 01-05-2020 19:05:08

Mostrar cifras completas y rellenar con 00
 
Hola Foro, nuevamente yo por aca

Tengo esta funcion para obtener la posicion en grados, minutos y segundos de cualquier planeta

Código Delphi [-]
function AngleToStr(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('%d° %d'' %d"',[d, trunc(m), trunc(s)]);
end;

Aunque funciona bien me muestra los valores de esta manera

Código Delphi [-]
244° 9' 1"

Necesito mostrarlos de esta forma y que a su vez muestre la fracccion de los segundos

Código Delphi [-]
244° 09' 01.35"

Gracias una vez mas

Saludos

ecfisa 01-05-2020 20:05:13

Hola

Intenta de con este formato:
Código Delphi [-]
function AngleToStr(angle: Extended):string;
...
  Result := Format('%.2d° %.2d'' %.2d"',[d, trunc(m), trunc(s)]);
end;

Saludos :)

compuin 01-05-2020 20:17:14

Perfecto, es lo que necesitaba

Muchas gracias

compuin 02-05-2020 01:52:55

Y para que me de los segundos con fraccion ??

Código Delphi [-]
244° 09' 01.35"

ecfisa 02-05-2020 21:56:00

Hola.

Código Delphi [-]
function AngleToStr(Angle: Extended):string;
var
  m,s : Extended;
begin
  m := Abs(Frac(Angle) * 60);
  s := Abs(Frac(m) * 60);
  Result := Format('%.2d° %.2d'' %2.2f"',[Trunc(Angle), Trunc(m), s]);
end;

Saludos :)

compuin 03-05-2020 02:36:21

Muchas gracias


La franja horaria es GMT +2. Ahora son las 09:44:48.

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