-
Description Finds fibonacci number by given index using iteration
Code (ns fibonacci) (defn get-fibonacci-number [index] "Finds fibonacci number by given index using iteration" (loop [x 0 y 1 z index] (if (< z 1) x (recur y (+ x y) (dec z)))))
Test Cases (ns fibonacci-test (:require [clojure.test :refer :all] [fibonacci :refer [get-fibonacci-number]])) (deftest get-fibonacci-number-test (is (= (get-fibonacci-number (- 10)) 0)) (is (= (get-fibonacci-number 0) 0)) (is (= (get-fibonacci-number 1) 1)) (is (= (get-fibonacci-number 2) 1)) (is (= (get-fibonacci-number 3) 2)) (is (= (get-fibonacci-number 4) 3)) (is (= (get-fibonacci-number 5) 5)) (is (= (get-fibonacci-number 10) 55)) (is (= (get-fibonacci-number 30) 832040)) (is (= (get-fibonacci-number 50) 12586269025)))
Output:
-
Code - (ns fibonacci)
- (defn get-fibonacci-number [index]
"Finds fibonacci number by given index"(if (<= index 0) 0)(if (<= index 2) 1(+ (get-fibonacci-number (- index 1))(get-fibonacci-number (- index 2)))))- "Finds fibonacci number by given index using iteration"
- (loop [x 0 y 1 z index]
- (if (< z 1) x (recur y (+ x y) (dec z)))))
Test Cases - (ns fibonacci-test
- (:require [clojure.test :refer :all]
- [fibonacci :refer [get-fibonacci-number]]))
- (deftest get-fibonacci-number-test
(is (get-fibonacci-number (- 10)) 0)(is (get-fibonacci-number 0) 0)(is (get-fibonacci-number 1) 1)(is (get-fibonacci-number 2) 1)(is (get-fibonacci-number 3) 2)(is (get-fibonacci-number 4) 3)(is (get-fibonacci-number 5) 5)(is (get-fibonacci-number 10) 55)(is (get-fibonacci-number 30) 832040))- (is (= (get-fibonacci-number (- 10)) 0))
- (is (= (get-fibonacci-number 0) 0))
- (is (= (get-fibonacci-number 1) 1))
- (is (= (get-fibonacci-number 2) 1))
- (is (= (get-fibonacci-number 3) 2))
- (is (= (get-fibonacci-number 4) 3))
- (is (= (get-fibonacci-number 5) 5))
- (is (= (get-fibonacci-number 10) 55))
- (is (= (get-fibonacci-number 30) 832040))
- (is (= (get-fibonacci-number 50) 12586269025)))
- All
- {{group.name}} ({{group.count}})
This comment has been reported as {{ abuseKindText }}.
Show
This comment has been hidden. You can view it now .
This comment can not be viewed.
- |
- Reply
- Edit
- View Solution
- Expand 1 Reply Expand {{ comments?.length }} replies
- Collapse
- Remove
- Remove comment & replies
- Report
{{ fetchSolutionsError }}