trabi11fr
Messages postés40Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention10 décembre 2008
-
19 déc. 2008 à 23:10
La saucisse masquée -
13 juin 2017 à 14:58
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 23 déc. 2008 à 10:13
comme perso je n'y comprend pas grand chose non plus,
et encore moins sur ces formules financières ;o)
trabi11fr
Messages postés40Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention10 décembre 2008 22 déc. 2008 à 20:11
Bonne idée, j'aurai du y penser avant.;-((((
Merci pour le mal que tu te donnes avec moi......
Excuse moi d'être aussi pinailleur, surtout pour quelqu'un qui n'y connait pas grand chose...;-))
@++
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 22 déc. 2008 à 16:00
teste le résultat et si c'est négatif...
n'imprime pas ou met 0, ou ... ce que tu veux
@+
trabi11fr
Messages postés40Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention10 décembre 2008 22 déc. 2008 à 15:42
YES.!!!
maintenant ça fonctionne.!!
Je ne peux pas juger de la "propreté" de ton code car je ne suis pas un grand spécialiste (je suis plutôt un "script raider".;-)).
Peut-on éviter le reste en fin de calcul qui donne une valeur négative?
************
Mois Année Echéance Principal Intérêts Reste Payé
11 3 35 1630.40 13.07 1636.74 57521.45
12 3 36 1636.92 6.55 -0.18 59164.92
55000.18 4164.74 59164.92
***********
Pour ce calcul :
somme 55000
année 3
taux 4.8
Je sais, je cherche la petite bête.....
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 22 déc. 2008 à 13:15
alors surtout ne me demande pas pourquoi
avec IE, ça ne fonctionne pas ! les
document.write ne doivent pas lui plaire ?
( pas trouvé, mais pas cherché beaucoup ! )
----
<form name =\"Saisie\" method=\"post\"
action=\"javascript:Calcul();\">
|
|
|
|</form>
</html>
je me rends compte, que j'ai totalement
modifé cela chez moi, et qu'il reste ici
des choses "pas bien", dès que je prends
le temps je mettrais une version ( un
peu plus ) propre
mais j'ai paré au plus vite...
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 22 déc. 2008 à 12:53
ah... je viens de contrôler...
tu dois utiliser IE !
effectivement, il doit rester un zouzou avec lui
avec les autres navigateurs, ça baigne
je regarde et te dis.
@+
trabi11fr
Messages postés40Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention10 décembre 2008 22 déc. 2008 à 12:42
Ben non. J'avais déjà essayé et ça ne fonctionne pas. On obtient bien l'affichage à l'écran mais c'est tout.
Le seul moyen d'imprimer reste "Fichiers / Imprimer" mais ce n'est pas très "pratique".
J'ai essayé d'inserer un bouton pour imprimer, mais toute modification ou ajout dans le code provoque son plantage.
Ce qui rend impossible une "personnalisation" de l'affichage des résultats (fond couleur, logo en tête,etc..). J'ai tout juste pu centrer le tableau dans la page. Seule l'affichage de départ peut être personnalisé (la partie html du code).
Dommage car c'est un très bon code pour les calculs....
@+.;-)))
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 22 déc. 2008 à 11:47
juste derrière le dernier document.write
...
document.write("</table>");
window.print();
}}}}
</script>
...
@+
trabi11fr
Messages postés40Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention10 décembre 2008 22 déc. 2008 à 11:17
Euh? oui? où ça alors? Parce que j'avais déjà essayé de le placer en différents endroits fin de script et ça n'a jamais fonctionné.:-((((
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 22 déc. 2008 à 08:55
très bien... mais j'ai répondu n'importe quoi,
l'alcool sans doute, soit trop, soit pas
encore ma dose....
window.print c'est imprimer la page, pas une
ligne, donc ce que je te suggérais ne peut pas
fonctionner.
fais plus simplement ce print en fin de script.
@+
trabi11fr
Messages postés40Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention10 décembre 2008 20 déc. 2008 à 18:18
Merci pour ta réponse.
C'est la deuxième solution qui m'intéresse.;-))))
Je vais l'essayer.
@+
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 20 déc. 2008 à 08:20
merci.
soit tu utilises le menu de ton navigateur : Fichiers / Imprimer,
soit tu remplaces les document.write par des window.print,
[ en remplaçant les table/tr/td... pour la mise en forme à
l'écran par des espaces pour le "cadrage" à l'imprimante
si nécessaire ]
@+
trabi11fr
Messages postés40Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention10 décembre 2008 19 déc. 2008 à 23:10
excellent script, mais comment obtenir le résultat sous forme imprimé?
Ou tout au moins pouvoir l'imprimer à partir d'un bouton?
J'ai fait plusieurs essais mais je n'ai rien trouvé. Je ne suis pas très doué....
Merci
13 juin 2017 à 14:58
23 déc. 2008 à 10:13
et encore moins sur ces formules financières ;o)
22 déc. 2008 à 20:11
Merci pour le mal que tu te donnes avec moi......
Excuse moi d'être aussi pinailleur, surtout pour quelqu'un qui n'y connait pas grand chose...;-))
@++
22 déc. 2008 à 16:00
n'imprime pas ou met 0, ou ... ce que tu veux
@+
22 déc. 2008 à 15:42
maintenant ça fonctionne.!!
Je ne peux pas juger de la "propreté" de ton code car je ne suis pas un grand spécialiste (je suis plutôt un "script raider".;-)).
Peut-on éviter le reste en fin de calcul qui donne une valeur négative?
************
Mois Année Echéance Principal Intérêts Reste Payé
11 3 35 1630.40 13.07 1636.74 57521.45
12 3 36 1636.92 6.55 -0.18 59164.92
55000.18 4164.74 59164.92
***********
Pour ce calcul :
somme 55000
année 3
taux 4.8
Je sais, je cherche la petite bête.....
22 déc. 2008 à 13:15
avec IE, ça ne fonctionne pas ! les
document.write ne doivent pas lui plaire ?
( pas trouvé, mais pas cherché beaucoup ! )
j'ai donc
ajouté devant la balise <html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
remplacé les document.write par impr+=
et ajouté un var impr="" en tête
var impr="";
impr+=("\");
en fin de script ajouté le print...
ça doit baigner
le plus simple (?) je te met la source :
======================================
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">
<html>
<head>
<title>prêts</title>
<script type=\"text/JavaScript\">
function Mef(valeur)
{ dec=\" \"+Math.floor(valeur*100)/100;
i=dec.lastIndexOf(\".\");
if (i!=(dec.length-3)) {
if (i<0) { dec=dec+\".00\"; } else {
if (i>(dec.length-2)) { dec=dec.substring(0,i+2); }
else { z=\"00\";
dec=dec+z.substring(0,dec.length-i-1); }}}
if (dec.length>12) { dec=dec.substring(0,11); }
else { if (dec.length<12) { b='';
for (z=0;z<=12-dec.length;z++) b=b+\" \";
dec=b+dec; } }
return dec; }
function Calcul() {
Af=document.Saisie.Montant.value;
if (Af<1) alert (\"montant du prêt erroné\"); else {
Y=document.Saisie.Duree.value;
if (Y<1 || Y>35) alert(\"Durée erronée\"); else {
Nf = Y * 12;
Ir=document.Saisie.Taux.value;
if (Ir<1 || Ir>20) alert(\"Taux erroné\"); else {
Rf = (Ir / 1200);
P1 = Af * ( Rf / ( 1 - ( 1 / ( Math.pow ( ( 1 + Rf ), Nf ) ) ) ) ) ;
Pf = Math.floor ( ( P1 + 0.005 ) * 100) / 100 ;
impr+=(\"Prêt de \"+document.Saisie.Montant.value+\"? sur \"+document.Saisie.Duree.value+
\" ans, au taux de \"+document.Saisie.Taux.value+\"% => Echéances de \" + Pf + \"? par mois
\");
Amort=new Array();
Amort[0,1] = Af;
Cp=0;
Ci=0;
var impr=\"\";
impr+=(\"<table border=0>\");
impr+=(\"----
Mois |Année |\");
impr+ =(\" Echéance |\");
impr+= (\" Principal |Intérêts |\");
impr+ =(\" Reste |Payé |\");
for ( I= 1 ; I <= Nf ; I++ ) {
Amort[I, 2] = Amort[I - 1, 1] * Rf;
Amort[I, 2] = Math.floor((Amort[I, 2] + 0.005) * 100) / 100;
Amort[I, 1] = Amort[I - 1, 1] - Pf + Amort[I, 2];
Amort[I, 1] = Math.floor ( ( Amort[I, 1] + 0.005 ) * 100 ) / 100;
T1 = I - Math.floor ( ( I - 1 ) / 12 ) * 12;
T2 = 1 + Math.floor ( ( I - 1 ) / 12 );
impr+=(\"----
"+T1+", \");
impr+=(\" "+T2+", \");
impr+=(\" "+I+", \");
impr+=(\" "+Mef(Pf - Amort[I, 2])+", \");
impr+=(\" "+Mef(Amort[I,2])+", \");
impr+=(\" "+Mef(Amort[I, 1])+", \");
impr+=(\" "+Mef(Pf * I)+", \");
Cp = Cp + Pf - Amort[I, 2];
Ci = Ci + Amort[I, 2];
}
Cp = Math.floor((Cp + 0.005) * 100) / 100;
Ci = Math.floor((Ci + 0.005) * 100) / 100;
impr+=(\"----
, , , \");
impr+=(\" "+Mef(Cp)+", \");
impr+=(\" "+Mef(Ci)+", \");
impr+=(\" , \");
impr+=(\" "+Mef(Cp+Ci)+", \");
impr+=("
");
document.body.innerHTML+=impr;
window.print();
}}}}
</script>
</head>
<center>
Montant
du prêt |
Durée en
années |
Taux
Entiers . Décimales |
----
<form name =\"Saisie\" method=\"post\"
action=\"javascript:Calcul();\">
|
|
|
|</form>
</html>
je me rends compte, que j'ai totalement
modifé cela chez moi, et qu'il reste ici
des choses "pas bien", dès que je prends
le temps je mettrais une version ( un
peu plus ) propre
mais j'ai paré au plus vite...
22 déc. 2008 à 12:53
tu dois utiliser IE !
effectivement, il doit rester un zouzou avec lui
avec les autres navigateurs, ça baigne
je regarde et te dis.
@+
22 déc. 2008 à 12:42
Le seul moyen d'imprimer reste "Fichiers / Imprimer" mais ce n'est pas très "pratique".
J'ai essayé d'inserer un bouton pour imprimer, mais toute modification ou ajout dans le code provoque son plantage.
Ce qui rend impossible une "personnalisation" de l'affichage des résultats (fond couleur, logo en tête,etc..). J'ai tout juste pu centrer le tableau dans la page. Seule l'affichage de départ peut être personnalisé (la partie html du code).
Dommage car c'est un très bon code pour les calculs....
@+.;-)))
22 déc. 2008 à 11:47
...
document.write("</table>");
window.print();
}}}}
</script>
...
@+
22 déc. 2008 à 11:17
22 déc. 2008 à 08:55
l'alcool sans doute, soit trop, soit pas
encore ma dose....
window.print c'est imprimer la page, pas une
ligne, donc ce que je te suggérais ne peut pas
fonctionner.
fais plus simplement ce print en fin de script.
@+
20 déc. 2008 à 18:18
C'est la deuxième solution qui m'intéresse.;-))))
Je vais l'essayer.
@+
20 déc. 2008 à 08:20
soit tu utilises le menu de ton navigateur : Fichiers / Imprimer,
soit tu remplaces les document.write par des window.print,
[ en remplaçant les table/tr/td... pour la mise en forme à
l'écran par des espaces pour le "cadrage" à l'imprimante
si nécessaire ]
@+
19 déc. 2008 à 23:10
Ou tout au moins pouvoir l'imprimer à partir d'un bouton?
J'ai fait plusieurs essais mais je n'ai rien trouvé. Je ne suis pas très doué....
Merci