"Деньги к деньгам"


#1

Мой код. Долго мучался с округлением, округляйте в ритёрне:))

var calculateDeposit = function (deposit, percentYear, timeMonth, isCapitalizetion) {

var percentMonth = percentYear/100/12;

if(isCapitalizetion) {
  for(var i=1; i<=timeMonth; i++){
    deposit = deposit*(percentMonth+1);
  }
  return Math.round(deposit);
}   

deposit = (percentMonth * timeMonth + 1) * deposit; 
return Math.round(deposit);

};

calculateDeposit(1000, 10, 12, 1);


#2

Почему в вашем коде при присваивании депозиту нового значения в конце +1?


#3

Тоже сразу не понял зачем +1 пока не попробовал проверть …получается после вычесления процента за месяц percentMonth = percentYear/100/12 получаем значение в сотых долях процента (например 0,01) который при умножении на начальную сумму deposit = depositpercentMonth даст совсем не то значение:
deposit = deposit
percentMonth
, зато когда прибавляем +1 , все суммы считаются правильно.
Хотя наверное это можно другим способом записать, но чет не могу пока придумать)