Compound interest

by Kirill

HTML

<form id="form">
    <input type="text" id="sum"/>
    <input type="text" id="percent"/>
    <input type="text" id="count"/>
    <input type="text" id="add"/>
    <input type="checkbox" id="table"/>
    <input type="checkbox" id="draw"/>
    <input type="submit"/>
</form>
<div id="result"></div>
<canvas id="canvas"></canvas>

CSS

input {
    display: block;
}

JavaScript

document.getElementById("form").onsubmit=(function(event) {
    event.preventDefault();
    var s = parseFloat(document.getElementById("sum").value);
    var p = parseFloat(document.getElementById("percent").value);
    var c = document.getElementById("count").value;
    var a = parseFloat(document.getElementById("add").value);
    var res = document.getElementById("result");
    var table = "";
    //if(draw) var canvas = document.getElementById("canvas").getContext("2d");
    if(!a) a=0;
    for(var i=0;i<c;i++) {
        var ma = i>0 ? a : 0;
        var s_start = s+ma;
        table+="<tr><td>" + (i+1) + "</td><td>" + s_start.toFixed(2) + "</td>";
        s+= (s+ma)*p/100+ma;
        table+="<td>" + s.toFixed(2) + "</td><td>" + (s-s_start).toFixed(2) + "</td></tr>";
    }
    if(!isNaN(s)) res.innerHTML = "Итоговая сумма: " + s.toFixed(2) + "<br/>Доход: " + (s-parseFloat(document.getElementById("sum").value)).toFixed(2) + "<br/>"; 
    if(document.getElementById("table").checked && table!="") document.getElementById("result").innerHTML+="<table border=1><tr><td>№</td><td>Начало периода</td><td>Конец периода</td><td>Доход</td></tr>" + table + "</table>";
});