let calculateDeposit = function (startSum, percent, term, isCapital) {
let total
if (isCapital) {
for (let i = 0; i < term; i++) {
startSum = startSum + (percent / 1200) * startSum
}
total = Math.floor(startSum)
} else {
total = Math.floor(percent / 1200 * term * startSum + startSum)
}
return total
}
Добрый день!
Я никогда раньше не занималась программированием, поэтому моё решение очень большое и неправильное.
Для решения задачи я использовала массив, когда речь идет о вкладе с капитализацией.
Проверку не могу пройти на 4 этапе и абсолютно не понимаю почему.
Возможно ли решить задачу с использованием массива?
Мое решение:
let calculateDeposit = function (initialDeposit, parsentage, numberMonth, isCapitalization) {
if (isCapitalization == false) {
let savingForMonth = parsentage / 100 / 12 * numberMonth * initialDeposit;
let totalAmountOfDeposit = initialDeposit + savingForMonth;
return Math.floor(totalAmountOfDeposit);
} else {
let array = [initialDeposit];
for (let i = 0; i <= numberMonth; i++) {
let totalAmountOfDeposit = 0;
totalAmountOfDeposit = array[i] + (parsentage / 100 / 12) * array[i];
array.push(totalAmountOfDeposit);
return Math.floor(array[array.length - 1]);
}
}
};
Как по мне, то вариантов решения поставленных задач множество, в том числе и использую массив или функции и циклы, главное понимать что туда писать, но как я понимаю код еще и должен быть как можно проще (меньше строк) и доступен к понимаю другим. Но опять же, массивы ни кто не отменял, другое дело зачем они тут. И кстати сам никогда этим не занимался, на HTML Academy получаю первый опыт.