Bonjour !

Je débute dans le JS & j'ai un souci avec mon code de calcul.

J'ai utilisé la boucle IF / ELSE IF / ELSE, je sais que le code serait plus lisible s'il était en SWITCH / CASE / BREAK / DEFAULT & c'est justement l'étape suivante, après avoir réussi avec if/else if & else

Lorsque je divise par 0 cela m'affiche infinity, il me semble que c'est normal vu qu'il n'est pas possible de diviser par 0 mais je souhaite juste indiquer en document.write("Erreur") mais ça m'indique: Infinity Erreur.

Donc comment faire pour que le calcul ne se face pas & qu'il m'affiche uniquement "Erreur" ?

Je pense donc qu'il y a une erreur dans mon code :-°

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
var nombreUn = parseFloat(prompt("Saisit le 1er nombre"));
var nombreDeux = parseFloat(prompt("Saisit le 2eme nombre"));
var operateur = prompt("Saisit un operateur");
var result;
 
if (isNaN(nombreUn) || isNaN(nombreDeux)) 
    {
    document.write("<p>Se n'est pas un nombre</p>");
    }
    else if ((operateur == "+") || (operateur == "addition")) {
        result = nombreUn + nombreDeux;
        document.write(result);
    }
    else if ((operateur == "-") || (operateur == "soustraction")) {
        result = nombreUn - nombreDeux;
        document.write(result);
    }
    else if ((operateur == "*") || (operateur == "multiplication")) {
        result = nombreUn * nombreDeux;
        document.write(result);
    }
    else if ((operateur == "/") || (operateur == "division")){
        result = nombreUn / nombreDeux;
        document.write(result);
        if (nombreDeux == "0"){
            document.write(" Erreur");
        }
    }
    else if ((operateur == "^") || (operateur == "puissance")){
        result = nombreUn ** nombreDeux;
        document.write(result);
    }
 
 
 
if ((operateur != "+") && (operateur != "-") && (operateur != "*") && (operateur != "/") && (operateur != "^") && (operateur != "addition") && (operateur != "soustraction") && (operateur != "multiplication") && (operateur != "division") && (operateur != "puissance")) {
    document.write("<p>Se n'est pas un operateur</p>");
}