Вера обнови решението на 15.10.2014 16:09 (преди около 10 години)
Вера, малко бележки:
Решението ти може би работи – ще разберем, като пуснем тестовете, но има много стилови проблеми. Много ми е трудно да го прочета.
Непременно се запознай с конвенциите, които ръководството по стил препоръчва. От следващата задача ще отнемаме точки за грубото им неспазване.
По-конкретно:
- Трябва да има точно по един интервал около "операторите", като
<=
,-
,+
,?
,==
,:
и т.н. - Трябва да отместваш кода си само с два интервала. Не с табове, не с друго. Два интервала.
- Не трябва да има интервали след отваряща скоба и преди затваряща такава (наппример, редове 1, 3, 6, ...). Още по-лошо е, че на други места не си слагала интервали, наоример редове 13-15.
- Принципно е добре да се придържаш към низове с единични кавички, освен ако не използваш специалните свойства на низ с двойни кавички (например, интерполация)
- Излишно много интервали/табове има на ред 3 и ред 9, след
else
-а. - Не ползвай
if-then
. Пропусниthen
и сложи тялото наif
-а на нов ред. Много по-лесно се чете и това е препоръчаната конвенция. -
Повечето скоби на 3 и 9 ред са напълно излишни. Ще ти дам пример как да се форматира функцията
fibonacci
:def fibonacci(n) if n == 1 or n == 2 1 else fibonacci(n - 1) + fibonacci(n - 2) end end
Забележи къде не съм слагал и къде съм слагал интеравли.
Следвай това форматиране и за другите методи.
Може би по-добро име от
function
на първия аргумент наseries
eseries_type
, или самоtype
. И пак – безthen
.
И най-важното – не предавай в последния момент, за да можем да ти оставим коментари и да реагираш на тях :)