Тодор обнови решението на 14.10.2014 10:46 (преди около 10 години)
+def series(method, n)
+ case
+ when method == 'fibonacci' then fibonacci(n)
+ when method == 'lucas' then lucas(n)
+ when method == 'summed' then fibonacci(n) + lucas(n)
+ end
+end
+
+def fibonacci(n)
+ return n if n <= 1
+ fibonacci(n-1) + fibonacci(n-2)
+end
+
+def lucas(n)
+ return 2 if n == 1
+ return 1 if n == 2
+ lucas(n-1) + lucas(n-2)
+end
Привет :)
- Може би трябва да хвърлиш едно око на style guide-a по въпрос на индентацията и интервалите :) (става въпрос за
case
и-
) - Според мен името на аргумента
n
не е особено описателно и не означава много в този контекст (Това е лично мнение, което може да се различава от мнението на колегите).
Иначе добро решение :)
Решението ти е супер