Haversine formula: Difference between revisions
Content added Content deleted
(Haversine formula en BASIC256) |
(Haversine formula en Yabasic) |
||
Line 3,760: | Line 3,760: | ||
2886.444 |
2886.444 |
||
</pre> |
</pre> |
||
=={{header|Yabasic}}== |
|||
{{trans|FreeBASIC}} |
|||
<lang Yabasic> |
|||
//pi está predefinido en Yabasic |
|||
deg2rad = pi / 180 // define grados a radianes 0.01745.. |
|||
radioTierra = 6372.8 // radio de la tierra en km |
|||
sub Haversine(lat1, long1, lat2, long2 , radio) |
|||
d_long = deg2rad * (long1 - long2) |
|||
theta1 = deg2rad * lat1 |
|||
theta2 = deg2rad * lat2 |
|||
dx = cos(d_long) * cos(theta1) - cos(theta2) |
|||
dy = sin(d_long) * cos(theta1) |
|||
dz = sin(theta1) - sin(theta2) |
|||
return asin(sqr(dx*dx + dy*dy + dz*dz) / 2) * radio * 2 |
|||
end sub |
|||
print " Distancia de Haversine entre BNA y LAX = ", Haversine(36.12, -86.67, 33.94, -118.4, radioTierra), " km" |
|||
end |
|||
</lang> |
|||
{{out}} |
|||
<pre> |
|||
Distancia de Haversine entre BNA y LAX = 259.478 km |
|||
</pre> |
|||
=={{header|zkl}}== |
=={{header|zkl}}== |