Решение на Първа задача от Иван Станков
Резултати
- 6 точки от тестове
- 0 бонус точки
- 6 точки общо
- 12 успешни тест(а)
- 0 неуспешни тест(а)
Код
Лог от изпълнението
............ Finished in 0.00946 seconds 12 examples, 0 failures
История (4 версии и 2 коментара)
Иван обнови решението на 13.10.2014 11:42 (преди около 10 години)
Иван обнови решението на 13.10.2014 23:22 (преди около 10 години)
Здрасти :)
Разгледай
case
statement-a в ruby, той е точно за такива ситуации катоif-elsif
въвseries
.Функциите
fibonacci
иlucas
изглежда почти еднакво. Изведи повтарящата се логика в отделна функция и я преизползвай.Ако си бил вчера на лекции знаеш, че не харесваме for. Замени го с
each
, или експериментирай с друга функция за итериране.Оставяй място около
-
и разгледай style guide-a.target
не е много добро име. Може биindex
, или дориn
e по-добре. Като цяло не се кефим на имена от типаn
, но при математически обекти може да се направи компромис.number
също не е много добро име за този масив от числа. Той ти съхранява членове от редицата. Помисли за по-добро име с такава семантика.
Благодаря за съветите!
Постарах се да променя нещата, които си посочил. Проблемът е, че нямам възможност да тествам програмата със skeptic, тъй като съм на работа.
Замених number със array, тъй като все пак имаме масив :D Във методът series_calculator съм извел общата логика за двете функции, като се изисква first_index.
Относно стилът, не ми стана много ясно за each дали е по-правилно да се записва като
@collection.each do |item|
# do whatever
end
или като
@collection.each {|item| ... }