Решение на Първа задача от Стефан Чипилов

Обратно към всички решения

Към профила на Стефан Чипилов

Резултати

  • 6 точки от тестове
  • 0 бонус точки
  • 6 точки общо
  • 12 успешни тест(а)
  • 0 неуспешни тест(а)

Код

def recurrence(index, seeds)
case index
when 1 then seeds[0]
when 2 then seeds[1]
else recurrence(index - 1, seeds) + recurrence(index - 2, seeds)
end
end
def series(series_type, index)
case series_type
when "fibonacci" then recurrence(index, [1, 1])
when "lucas" then recurrence(index, [2, 1])
when "summed" then recurrence(index, [1, 1]) + recurrence(index, [2, 1])
end
end

Лог от изпълнението

............

Finished in 0.02531 seconds
12 examples, 0 failures

История (1 версия и 1 коментар)

Стефан обнови решението на 15.10.2014 01:20 (преди около 10 години)

+def recurrence(index, seeds)
+ case index
+ when 1 then seeds[0]
+ when 2 then seeds[1]
+ else recurrence(index - 1, seeds) + recurrence(index - 2, seeds)
+ end
+end
+
+def series(series_type, index)
+ case series_type
+ when "fibonacci" then recurrence(index, [1, 1])
+ when "lucas" then recurrence(index, [2, 1])
+ when "summed" then recurrence(index, [1, 1]) + recurrence(index, [2, 1])
+ end
+end
  • recurrence е малко неясно име. Употребата на отделни функции за всяка редица е по ясно решение.
  • seeds също е леко объркващо, може би first_members би било по-добре.
  • Като цяло решението ти е добре, но наблегни повече на именуването. Опитай се да прочетеш кода като си представиш, че нямаш представа от условието и се опитваш да разбереш какво прави.