Ясен обнови решението на 12.10.2014 15:49 (преди около 10 години)
Здравей :)
Хубаво решение. Харесва ми, че не си сложил какви да е имена на променливите и функциите, а си помислил за по-добри такива.
Само няколко забележки:
-
return
-ите са излишни. Когато израз е последен във функцията, той сеreturn
-ва винаги. - Хубаво е, че си се сетил да отделиш първоначалните стойности от функцията, която смята сумата.
initial_values
обаче не ми изглежда добре, поради три причини:- Съкратил си имената, може би с идеята да ги събереш на един ред, което обаче прави функцията по-трудна за разчитане.
- Магията, която се случва на 12. ред ми отне време да я схвана, а това не е добър знак. Всичко трябва да е написано така, че от един поглед да е ясно какво се случва.
- Първоначалните стойности са различни от тези на съответните редици. По-добре нагласи функцията, така че да работи с "истинските" първоначални стойности, отколкото да нагласяваш стойностите според функцията.
Ако смяташ, че с initial_values
няма да могат да се оправят някои от нещата, може да използваш case .. when .. then ..
в series
.