begin process at 2012 02 12 01:34:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Javascript

 > 

Archives

 > 

Débutants

 > 

multiplication


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

multiplication

lundi 3 janvier 2005 à 03:19:57 | multiplication

eth_gascon

salut
j'ai posé ma question ici :

http://www.javascriptfr.com/forum.v2.aspx?ID=221610

j'ouvre un nouveau sujet pour apparaitre dans les dernier message du forum ^^

merci
lundi 3 janvier 2005 à 14:34:04 | Re : multiplication

the_smurf

Pour moi le problème vient du fait que les calculs de flottant sont mal géré.

Je pense que ce qui ce passe c'est que le nombre flottant que l'on rentre en décimal est converti en binaire pour les calculs.

Pour coder les chiffres après la virgule je ne sais pas comment c'est fait par l'interprêteur js (car il y a plusieurs codage possible) mais on utilise vraisemblablement les 64bits où les derniers bits sont significatifs (en effet 1 en dec = 1 en bin mais 10 en dec = 1010 en bin etc donc si 0.1 en dec est lu comme 1000000...00000000 en dec plus une information sur la place de la virgule lors de la convertion en bin on peut avoir qq chose avec des bits significatifs en fin ex 0110000..101011111 en bin). En multipliant 2 flottants, on dépasse donc la limite des 64bits... le résultats est en quelque sorte tronqué et quand on recode le résultat en décimal est est faussé.

Voilà c'était mon explication perso (c'est peut être complètement faux mais je pense que c'est plausible).

Maintenant pour régler le problème:
Moi je passerais par les entiers pour mes calculs (on peut même créer un function qui le fait à notre place)
ex: 0.1 * 0.1 = 1*1/(10*10)=0.1
...  0.1234*0.1234=1234*1234/(10000*10000)=...

lundi 3 janvier 2005 à 18:45:43 | Re : multiplication

eth_gascon


effectivement cette solution donne un resultat "vraiment" juste
je me demande quand meme (suis un peu chiant)  si c'est comme sa qu'il fond dans les site professionnel?


merci

ps: si je voi Sun leur dit que leur langage est trés bien mais qu'il aurait pu lui aprendre a calculer avec des flotant
mardi 4 janvier 2005 à 16:52:03 | Re : multiplication

the_smurf

Réponse acceptée !
La question ne se pose pas vraiment car sur les sites professionnel on évite un maximum de faire des calculs en js. On préfère effectuer un maximum de chose coté serveur (donc en java par exemple) pour ne pas être dépendant de la machine client.
Les calculs que l'on laisse sur le client sont généralement très simples car ils ne sont sensés servir, à mon avis, qu'à la mise en page, les données étant déjà calculées.   

Je n'ai pas énormément d'expérience professionnel mais j'ai déjà vu plusieurs fois, dans d'autres technologies que le js, le passage systématique des flottants en entiers afin d'éviter les problèmes... Est-ce la meilleur solution??? pas sûr du tout car les tailles mémoires utilisées et le nombre de calculs intermédiaires sont vraisemblablement plus importants. Mais tant que l'on ne fait pas de l'embarqué ou de l'optimisation et que l'on ne manipule pas de nombres frolant déjà l'overflow sous forme de flottant... c'est utilisable. 



 

mardi 4 janvier 2005 à 18:45:48 | Re : multiplication

eth_gascon

ok merci


Cette discussion est classée dans : forum, multiplication


Répondre à ce message

Sujets en rapport avec ce message

C'est votre forum ! [ par Nix ] Bonjour tout le monde,Ce forum est le votre, alors n'hésitez pas à poser vos questions dessusJe ne peux pas promettre de répondre personnelement car j Forum-city [ par sebrs1 ] Bonjour à tous,j'ai fais un site pour que tous le monde pose des question sur n'importe quel sujet, alors si vous avez des questions en programmation, Un forum de programmation [ par hm1ch ] Un nouveau site de programmation vient d'ouvrir ses portes aux particuliers expérimentés ou non au monde de la programmation. Sur ce site vous y trouv Correction Html + Javascript [ par dream ] Voilà, j'ai voulu un peu modifier un des nombreux test qu'on peut trouver sur le net, mais bon je m'y connais pas vraiment. Si quelqu'un pouvait me co comment construire un forum [ par wael14 ] salutcomment construire un forum avec le html ou le java scriptmerci Smileys [ par coockiesch ] Hello!!!Je cherche a créer, comme pour le forum, une fenêtre smileys pour mon forum.Lorsqu'on clique sur un smiley, son "code" est ajouté au message.C Forum en javascript [ par T0x1K ] Quelqu'un sait ou je pourrait trouver un forum propre et soigné pour mon site?-----------------------T0x1K alias Ice-Boss nouveau forum informatique ! [ par rhodan51 ] bonjour à tous,je viens de créer un nouveau forum informatique sur divers languages de prgrammation et je cherche des personnes ayant de bonnes notion Addition/multiplication de quantité et prix dans un formulaire [ par noursxjr ] Bonjour à tous,je créé un formulaire assez simple en javascript qui permet de passer une commande.2 types de produits PA et PB différents2 tarifs : TA Besoin d'aide pour faire un forum [ par xharly ] Voila je voudrais faire un forum tout simple dans le genre de celui la (et même exactement celui la si posible)http://cedhart.ch/forums/help/Voila don


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,524 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales