Created
June 18, 2018 05:01
-
-
Save lagenorhynque/d2266940bf66d87272c1b8918c55bb80 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| cljs.user=> (defn leibniz [n-terms] | |
| #_=> (->> (iterate inc 1) | |
| #_=> (filter odd?) | |
| #_=> (map / (cycle [1 -1])) | |
| #_=> (take n-terms) | |
| #_=> (apply +) | |
| #_=> (* 4.0))) | |
| #'cljs.user/leibniz | |
| cljs.user=> (time (leibniz 10000)) | |
| "Elapsed time: 51.138105 msecs" | |
| 3.1414926535900345 | |
| cljs.user=> (time (leibniz 100000)) | |
| "Elapsed time: 530.490666 msecs" | |
| 3.1415826535897198 | |
| cljs.user=> (time (leibniz 1000000)) | |
| "Elapsed time: 5867.103103 msecs" | |
| 3.1415916535897743 | |
| cljs.user=> (defn leibniz' [n-terms] | |
| #_=> (->> (transduce | |
| #_=> (take n-terms) | |
| #_=> + | |
| #_=> (->> (iterate #(+ % 2) 1) | |
| #_=> (map / (cycle [1 -1])))) | |
| #_=> (* 4.0))) | |
| #'cljs.user/leibniz' | |
| cljs.user=> (time (leibniz' 10000)) | |
| "Elapsed time: 46.125388 msecs" | |
| 3.1414926535900345 | |
| cljs.user=> (time (leibniz' 100000)) | |
| "Elapsed time: 357.253515 msecs" | |
| 3.1415826535897198 | |
| cljs.user=> (time (leibniz' 1000000)) | |
| "Elapsed time: 3433.809805 msecs" | |
| 3.1415916535897743 | |
| cljs.user=> (defn leibniz'' [n-terms] | |
| #_=> (->> (iterate #(+ % 2) 1) | |
| #_=> (map / (cycle [1 -1])) | |
| #_=> (take n-terms) | |
| #_=> (apply +) | |
| #_=> (* 4.0))) | |
| #'cljs.user/leibniz'' | |
| cljs.user=> (time (leibniz'' 10000)) | |
| "Elapsed time: 70.789558 msecs" | |
| 3.1414926535900345 | |
| cljs.user=> (time (leibniz'' 100000)) | |
| "Elapsed time: 456.015960 msecs" | |
| 3.1415826535897198 | |
| cljs.user=> (time (leibniz'' 1000000)) | |
| "Elapsed time: 4224.213782 msecs" | |
| 3.1415916535897743 |
Author
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
cf. https://ja.wikipedia.org/wiki/ライプニッツの公式