Как написать цикл для расчета сложного процента по вкладу
Никак не могу понять, как написать цикл для расчета.
Пример: сумма вклада 100 000 рублей на год под 10% Срок размещения равен трем месяцам.
(100 000 * 10 * 30 / 365) / 100 - за 1 первый месяц доход = 821 р.
Доходность плюсуется к начальному вкладу.
(100 821 * 10 * 30 / 365) / 100 - за 2 первый месяц доход = 828 р.
(101 649 * 10 * 30 / 365) / 100 - за 3 первый месяц доход = 835 р.
Вот мой черновик:
function calculationINCOME(){
let a = document.getElementById("deposit_amount1"); //сумма вклада
let r = document.getElementById("deposit_rate"); //годовая ставка
let t = document.getElementById("time"); //срок размещения вклада
let d = document.getElementById("days_year"); //число дней в году
let result = 0;
let p = 0; //количество периодов, зависит от переменной t
if(document.getElementsByName("capital")[0].checked){
result = ((a.value * r.value * t.value) / d.value) / 100;
document.getElementById("income").innerText = result.toFixed(2);
} else {
if(document.getElementsByName("period")[0].checked){ //период капитализации 1 месяц
p = Math.round(t.value / 30); //при сроке = 365 p = 12
for(i = 0; i <= p; i++)
{
result += ((a.value * r.value * 30) / d.value) / 100;
}
} else if(document.getElementsByName("period")[1].checked){ //период капитализации 1 квартал
p = Math.round(t.value / 90); //при сроке = 365 p = 4
for(i = 0; i < p; i++)
{
result += ((a.value * r.value * 30) / d.value) / 100;
}
} else if(document.getElementsByName("period")[2].checked){ //период капитализации 1 год
p = Math.round(t.value / 365); //при сроке = 365 p = 1
for(i = 0; i < p; i++)
{
result += ((a.value * r.value * 30) / d.value) / 100;
}
}
document.getElementById("income").innerText = result.toFixed(2);
}
}
Источник: Stack Overflow на русском