cs_lidia22
Messages postés37Date d'inscriptiondimanche 28 septembre 2008StatutMembreDernière intervention10 mai 2010
-
2 avril 2009 à 12:37
cs_lidia22
Messages postés37Date d'inscriptiondimanche 28 septembre 2008StatutMembreDernière intervention10 mai 2010
-
3 avril 2009 à 14:44
salut a tous;
je voulais consernant Comment faire pour convertir des degrés décimaux en degrés
sexagésimaux en langage DELPHI?
exemple:
latitude = 121,135° je sais que pour convertir il faut faire comme suite:
Le nombre avant la virgule indique les degrés => 121°
Multiplier le nombre après la virgule par 60 => 0,135 * 60 = 8,1
Le nombre avant la virgule devient la minute (8')
Multiplier le nombre après la virgule par 60 => 0,1 * 60 = 6
Le résultat correspond aux secondes (6").
Notre longitude sera de 121° 8' 6" (
degrés sexagésimaux (degrés-minutes-secondes)
mais je sais pas comment faire ça en langage DELPHI alors SVP aidé moi
amani
A voir également:
Conversion degrés minutes secondes en degrés décimaux
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 2 avril 2009 à 18:53
function DecToSexa(Dec: Double; var Deg: Longword; var Min: Double; var Sec: Double): String;
begin
Deg := Trunc(Dec);
Min := (Dec - Trunc(Dec)) * 60;
Sec := Trunc((Min - Trunc(Min)) * 60);
Min := Trunc(Min);
Result := Format('%d° %f'' %f"', [Deg, Min, Sec]);
end;
Cette fonction prend en paramètre la latitude dans Dec, et renvoie les degrés, minutes et secondes dans Deg, Min et Sec. En bonus, elle renvoie la chaîne formatée {Degrés° Minutes' Secondes"} en résultat.
f0xi
Messages postés4205Date d'inscriptionsamedi 16 octobre 2004StatutModérateurDernière intervention12 mars 202235 2 avril 2009 à 19:31
correction :
function DegDToDegS(const L: extended; var D,M,S: extended): string;
var
fE : extended;
begin
D := int(L);
fE := (L - D) * 60;
M := int(fE);
fE := (fE - M) * 60;
S := int(fE);
result := format('%.0f° %.0f'' %.0f"',[D,M,S]);
end;