Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
12
Task/Haversine-formula/Clojure/haversine-formula.clj
Normal file
12
Task/Haversine-formula/Clojure/haversine-formula.clj
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
(defn haversine
|
||||
[{lon1 :longitude lat1 :latitude} {lon2 :longitude lat2 :latitude}]
|
||||
(let [R 6372.8 ; kilometers
|
||||
dlat (Math/toRadians (- lat2 lat1))
|
||||
dlon (Math/toRadians (- lon2 lon1))
|
||||
lat1 (Math/toRadians lat1)
|
||||
lat2 (Math/toRadians lat2)
|
||||
a (+ (* (Math/sin (/ dlat 2)) (Math/sin (/ dlat 2))) (* (Math/sin (/ dlon 2)) (Math/sin (/ dlon 2)) (Math/cos lat1) (Math/cos lat2)))]
|
||||
(* R 2 (Math/asin (Math/sqrt a)))))
|
||||
|
||||
(haversine {:latitude 36.12 :longitude -86.67} {:latitude 33.94 :longitude -118.40})
|
||||
;=> 2887.2599506071106
|
||||
Loading…
Add table
Add a link
Reference in a new issue