Probleme de calcule [Résolu]

Signaler
Messages postés
24
Date d'inscription
lundi 11 février 2002
Statut
Membre
Dernière intervention
8 avril 2010
-
Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
-
Bonjour à tous!

J'ai une fonction très simple de calcule qui est la suivante

<script language="JavaScript">
function Calcule(form)
{
form.thoraire.value=parseInt(form.sal.value)/parseInt(form.nbh.value);
}
</script>	


Le problème, lorsque je fais le calcule, il arrive que la réponse n'est pas bonne. Exemple : 370.50 / 39 donne 9.487179487179487 alors que la réponse devrait être 9.50

Est-ce que quelqu'un a une idée ?

Est-ce possible aussi de limiter le nombre à 2 chiffre après la virgue ?

Merci de m'aider!

3 réponses

Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
7
Bonjour,

parseInt transforme le paramètre en un entier. Un entier est un nombre sans décimal. Ton 370.50 en entier est 370 et 370/39 donne 9.487179487179487

Tu devrais utiliser parseFloat qui transforme le paramètre en nombre à virgule flottante.
Messages postés
24
Date d'inscription
lundi 11 février 2002
Statut
Membre
Dernière intervention
8 avril 2010

Super ça marche!

Merci beaucoup de ton aide! :-)

Est-ce que tu as une idée s'il est possible par la suite de limiter le nombre de chiffre après la virgule ?


Merci!
Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
7
Tu peux arrondir ton nombre avec la méthode Math.round. Comme il n'y a pas de paramètre pour la précision il faut juste que tu fasses un multiplication par 10^n et division par 10^n après l'arrondissement (n est la précision).

Exemple :
// Ceci donne 3.14
var nombre = Math.round(parseFloat("3.1415")*100) / 100;