2009-10-18 6 views
0

Dans Excel je:JavaScript Math: Comment est-ce que j'écris ceci?

= (((RACINE (40)) * ($ E 8 $/C16))^2) * 1,1

qui ressemble à:

(((RACINE (40)) * (7,695/0,200))^2) * 1,1;

Je ne peux pas le faire fonctionner en Javascript!

J'ai:

réponse = (Math.exp (((Math.sqrt (40)) * (7,695/0,200))) * 1.1);

Je reçois quelque chose comme: 5.265317066795887e + 105

Quand je pense à obtenir quelque chose comme: 65168

Quelqu'un peut-il aider à voir mon erreur?

+2

Excel permet-il vraiment cela comme multiplication? (E1) 1.1 –

+0

@ d03boy: J'ai essayé cela dans Excel 2007 et il est écrit "Microsoft Office Excel a trouvé une erreur dans la formule que vous avez entrée. Voulez-vous accepter la correction proposée ci-dessous?" avec la suggestion "= (E1) * 1.1". –

Répondre

12

Math.exp(x) n'est pas x^2 mais selon the docs e^x. Vous voulez utiliser Math.pow(x,y) (doc), ce qui signifie x^y à la place. Utilisez cette expression:

answer = Math.pow(Math.sqrt(40) * (7.695/0.200), 2)*1.1; 
+3

La multiplication par '1.1' devrait être en dehors de' Math.pow'. –

+0

Vous avez raison, merci pour l'indice, corrigé ce – theomega

+0

+1, bien que cela pourrait courir plus vite? 'answer = Math.sqrt (40) * 7,695/0,200; réponse = 1.1 * réponse * réponse; ' – MarkJ