Hallo Knud
Und so funktionierts
Meine Beispielwerte beziehen sich auf Österreich du müsstest dir die entsprechenden Werte für Deutschland halt aus einer Landkarte herausmessen.
So sieht die Tabelle aus:
PLZ Breite Länge .......Ortsname usw
2466 16,33 47,955
2700 16,264 47,912
2263 16,68 48,25
2345 14,75 48,14
.........
Jede deutsche Stadt kommt als einzelne Zeile in die Tabelle
Auch deine Startstadt ist nur als eine einzige zeile vorhanden.
Damit kannst du alle Luftlinienentfernungen in Deutschland berechnen.
Dabei wird hinter dem Komma der Dezimalanteil geschrieben und nicht die minuten
14 grad 30 minuten schreibt sich also 14,5
Bsp. Entfernung zwischen 2700 und 2345
Zuerst einige Konstanten:
km_je_lgrad = 75,6 -- ein Längengrad hat ca. 75,6 km
km_je_bgrad = 110,7 -- ein Breitengrad hat ca. 110,7 km
-- Diese Werte gelten für Österreich
-- Mein Bsp. Bezieht sich daruf, dass Deutschland als Fläche angesehen wird,
-- für die diese Werte anhand einer Landkarte ermittelt werden können.
-- für grössere bereiche (z.B. ganz Europa) müsstest du ein Mathematikbuch
-- Kapitel sphärische Trigonometrie heranziehen.
-- hol dir nun die werte für startpunkt und endpunkt aus der tabelle:
s_l = 47,912 -- länge von PLZ 2700
s_b = 16,264 -- breite von PLZ 2700
e_l = 48,14 -- länge von PLZ 2345
e_b = 14,75 -- breite von PLZ 2345
delta_l = e_l - s_l = 0,228 -- horizontale entfernung in längengraden
delta_b = e_b - s_b = -1,514 -- vertikale entfernung in breitengraden
delta_x = delta_l * km_je_lgrad = 17,2368 -- horizontale entfernung in km
delta_y = delta_b * km_je_bgrad = -167,5998 -- horizontale entfernung in km
-- trigonometrische berechnung nach pythagoras
-- a² + b² = c²
-- c = wurzel (a² + b²)
-- a = delta_x
-- b = delat_y
c = sqrt((delta_x * delta_x)+(delta_y * delta_y))
= sqrt( 297,10727424 + 28089,69296004 )
= 168,483827812285888841400886475398 -- entfernung zwischen den PLZs in km.
schwitz uff fertig!
karl :-)‚