1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
<canvas width="400" height="300" style="max-width:80%" id="canvasLissage"></canvas>
<script>
function CalculM1(idA) {
Tptz=0.000000000000000000000000000000001; //Taux du taux 0
Mptz=92000; // Montant du Pret a taux 0
Nptz_diff=5; // le pret a taux 0 commence dans 5ans
Nptz_amort=20; // le pret a taux 0 duree 20ans
Mptz=500; // Mensualité du pret a taux 0
El=200000; // Montant du Pret 1
Tl=2; // Taux du Pret 1
Nl=25; // Durée du Pret 1
//=> Ml = 848
Ec=25000;// Montant du Pret 2
Tc=6; // Taux du Pret 2
Nc=10; // Durée du Pret 2
//=> Mc = 278
// Calcul de la mensualité du Pret 1
M1 = El*(Tl/100)/(1-Math.pow((1+Tl/100/12),(-(Nl*12))))/12;
M1=Math.floor(M1*100)/100;
// Calcul de la mensualité du Pret 2
Mc=Ec*(Tc/100)/(1-Math.pow((1+Tc/100/12),(-(Nc*12))))/12;
Mc=Math.round(Mc*100)/100;
GraphLissage(Mc,Nc,M1,Nl,Mptz,Nptz_diff,Nptz_amort,idA);
}
function GraphLissage(Mc,Nc,M1,Nl,Mptz,Nptz_diff,Nptz_amort,idA) {
M2=M1+Mc+Mptz;
Width=document.getElementById("canvasLissage").width;
Height=document.getElementById("canvasLissage").height;
cnvlss = document.getElementById("canvasLissage");
ctxlss = cnvlss.getContext("2d");
ctxlss.fillStyle="white";
ctxlss.fillRect(0,0,Width,Height);
ctxlss.fillStyle="black";
ctxlss.beginPath();
ctxlss.moveTo(10,Height-20);ctxlss.lineTo(Width-4,Height-20);
ctxlss.stroke();
ctxlss.beginPath();ctxlss.moveTo(Width-12,Height-25);
ctxlss.lineTo(Width-4,Height-20);ctxlss.lineTo(Width-12,Height-15);
ctxlss.stroke();
ctxlss.beginPath();
ctxlss.moveTo(20,Height-10);ctxlss.lineTo(20,10);
ctxlss.stroke();
ctxlss.beginPath();ctxlss.moveTo(15,18);
ctxlss.lineTo(20,10);ctxlss.lineTo(25,18);
ctxlss.stroke();
Mx=Width-40;
ctxlss.fillStyle="blue";
ctxlss.fillRect(20,40,Mx*Nc/Nl,M1/M2*(Height-60));
ctxlss.fillRect(20+Mx*Nc/Nl , 40 ,Width-(20+Mx*Nc/Nl)-20 ,(Height-60));
ctxlss.fillStyle="green";
ctxlss.fillRect(20,40+M1/M2*(Height-60),Mx*Nptz_amort/Nl,Mptz/M2*(Height-60));
ctxlss.fillStyle="magenta";
ctxlss.fillRect(20,40+M1/M2*(Height-60),Mx*Nc/Nl,Mc/M2*(Height-60));
ctxlss.font="8pt Calibri,Geneva,Arial";
ctxlss.fillStyle="black";
ctxlss.fillText(Nptz_amort,Mx*Nptz_amort/Nl,Height-5);
ctxlss.fillText(Nc,Mx*Nc/Nl,Height-5);
ctxlss.fillText(Nl,Mx-5,Height-5);
ctxlss.textAlign="left";
ctxlss.fillText(Math.round(Mc),0,40+M1/M2*(Height-60));
ctxlss.fillText(Math.round(Mptz),0,35+M1/M2*(Height-60));
ctxlss.fillText(Math.round(M1),0,30);
}
CalculM1(idA);
</script> |
Partager