Data update

This commit is contained in:
Ingy döt Net 2026-04-30 12:34:36 -04:00
parent 4bb20c9b71
commit cbaf4c4b64
12390 changed files with 318560 additions and 27248 deletions

View file

@ -0,0 +1,40 @@
/*REXX pgm calculates distance between Nashville & Los Angles airports. */
say " Nashville: north 36° 7.2', west 86° 40.2' = 36.12°, -86.67°"
say "Los Angles: north 33° 56.4', west 118° 24.0' = 33.94°, -118.40°"
say
dist=surfaceDistance(36.12, -86.67, 33.94, -118.4)
say dist
bef = Length(dist/1)
kdist=format(dist/1,bef,2)
mdist=format(dist/1.609344,bef,2)
ndist=format(mdist*5280/6076.1,bef,2)
say ' distance between= ' kdist " kilometers,"
say ' or ' mdist " statute miles,"
say ' or ' ndist " nautical or air miles."
exit /*stick a fork in it, we're done.*/
/*----------------------------------SURFACEDISTANCE subroutine----------*/
method radians(x) static
return x * Math.PI / 180
method surfaceDistance(lat1,lon1,lat2,lon2) public static /*use haversine formula for dist.*/
radius = 6372.8 /*earth's mean radius in km */
dLat = radians(lat2 - lat1)
dLon = radians(lon2 - lon1)
lat1 = radians(lat1)
lat2 = radians(lat2)
a = sin(dLat / 2)**2 + cos(lat1) * cos(lat2) * sin(dLon / 2) ** 2
c = 2 * asin(sqrt(a))
return radius * c
method cos(x) static
return Rexx Math.cos(x)
method sin(x) static
return Rexx Math.sin(x)
method asin(x) static
return Rexx Math.asin(x)
method sqrt(x) static
return Rexx Math.sqrt(x)