Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
26
Task/Haversine-formula/FutureBasic/haversine-formula.basic
Normal file
26
Task/Haversine-formula/FutureBasic/haversine-formula.basic
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
window 1
|
||||
|
||||
local fn Haversine( lat1 as double, lon1 as double, lat2 as double, lon2 as double, miles as ^double, kilometers as ^double )
|
||||
double deg2rad, dLat, dLon, a, c, earth_radius_miles, earth_radius_kilometers
|
||||
|
||||
earth_radius_miles = 3959.0 // Radius of the Earth in miles
|
||||
earth_radius_kilometers = 6372.8 // Radius of the Earth in kilometers
|
||||
deg2rad = Pi / 180 // Pi is predefined in FutureBasic
|
||||
|
||||
dLat = deg2rad * ( lat2 - lat1 )
|
||||
dLon = deg2rad * ( lon2 - lon1 )
|
||||
a = sin( dLat / 2 ) * sin( dLat / 2 ) + cos( deg2rad * lat1 ) * cos( deg2rad * lat2 ) * sin( dLon / 2 ) * sin( dLon / 2 )
|
||||
c = 2 * asin( sqr(a) )
|
||||
|
||||
miles.nil# = earth_radius_miles * c
|
||||
kilometers.nil# = earth_radius_kilometers * c
|
||||
end fn
|
||||
|
||||
double miles, kilometers
|
||||
|
||||
fn Haversine( 36.12, -86.67, 33.94, -118.4, @miles, @kilometers )
|
||||
|
||||
print "Distance in miles between BNA and LAX: "; using "####.####"; miles; " miles."
|
||||
print "Distance in kilometers between BNA LAX: "; using "####.####"; kilometers; " km."
|
||||
|
||||
HandleEvents
|
||||
Loading…
Add table
Add a link
Reference in a new issue