Нели обнови решението на 12.10.2014 17:49 (преди около 10 години)
+def series(name, index)
+ return fibonacci_series(index) if name.eql?('fibonacci')
+ return lucas_series(index) if name.eql?('lucas')
+ fibonacci_series(index) + lucas_series(index)
+end
+
+def fibonacci_series(index)
+ return 1 if index < 3
+ fibonacci_series(index - 1) + fibonacci_series(index - 2)
+end
+
+def lucas_series(index)
+ return 2 if index == 1
+ return 1 if index == 2
+ lucas_series(index - 1) + lucas_series(index - 2)
+end
- Използвай сравненията различни от
==
, само когато наистина имаш нужда от семантиката им. - Ако ти се занимава можеш да разгледаш
case
конструкцията и да я пробваш вместо комбинациите отreturn
иif
в задачата ти, но и в текущото състояние е добре :).