Partage
  • Partager sur Facebook
  • Partager sur Twitter

Calculatrice

Pas de résultat

Sujet résolu
    30 janvier 2024 à 10:22:11

    Bonjour, je viens demander de l'aide sur un code de calculatrice que j'ai commencé hier et là je bloque je vois pas pourquoi il ne m'affiche pas les résultats correspondants aux choix d'opération :

    let choix;
    do{
        choix = prompt ("Que souhaitez vous faire ? \n\n 1 - Addition \n 2 - Mutiplication \n 3 - Soustraction \n 4 - Division \n")
        if (choix == 1 || choix == 2 || choix == 3 || choix == 4){
            break;
        }
    }while (choix != 1, 2, 3, 4);
    
    
    
    let premierNombre;
    let deuxiemeNOmbre; 
    
    do{
        premierNombre = prompt ("Entrez un nombre");
    }   while (isNaN(premierNombre) || null);
    
    do{
        deuxiemeNombre = prompt ("Entrez un nombre");
    }   while (isNaN(deuxiemeNombre) || null);
    
    
    
    
    
    function addition (nombreA, nombreB) {
        return  nombreA + nombreB;
    }
    
    function multiplication (nombreA, nombreB) {
        return  nombreA * nombreB;
    }
    
    function soustraction (nombreA, nombreB)  {
        return  nombreA - nombreB;
    }
    
    function division (nombreA, nombreB)  {
        if(nombreB == 0){
        throw new Error ("Impossible de diviser par 0");
        }
        return  nombreA / nombreB;
    }
    
    
    
    
    try{
        switch (choix){
        case 1: 
            resultat = addition (premierNombre, deuxiemeNombre);
            break;
            
        case 2:
            resultat = multiplication (premierNombre, deuxiemeNombre);
            break;
            
    
        case 3:
            resultat = soustraction (premierNombre, deuxiemeNombre);
            break;
           
    
        case 4:
            resultat = division (premierNombre, deuxiemeNombre);
            break;
    
            default:
                throw new Error("Une erreur est survenue.")
    }
    
    alert ("Voici le résultat " + resultat);
    }
    
    catch(error){
        alert(error);
    }


    Merci de votre aide !

    • Partager sur Facebook
    • Partager sur Twitter
      30 janvier 2024 à 15:48:58

      Bonjour, je ne vais pas te donner la réponse mais des indices de recherche. Le problème ce trouve dans le type de la variable choix

       Pour connaitre le type :

      console.log(typeof choix);

      Regarde le type de retour de prompt:

      https://developer.mozilla.org/fr/docs/Web/API/Window/prompt

      PS : L7 Ta condition de sortie de boucle n'est pas correct.

      • Partager sur Facebook
      • Partager sur Twitter
        30 janvier 2024 à 19:45:17

        Bonsoir et merci :)

        Oui j'ai compris après recherche. Ici choix est undefined car prompt() sert à entrer par défaut du texte. Et donc j'ai corrigé :

        Number(prompt())

        pour pouvoir avoir une variable choix de nombre.  (Je n'arrive pas à écrire choix comme tu l'as fait).

        J'ai corrigé L7 :

        while (choix != 1 && choix != 2 && choix != 3 && choix != 4);



        • Partager sur Facebook
        • Partager sur Twitter
          30 janvier 2024 à 20:15:31

          Bonsoir, En fait choix n'est pas undefined, le retour d'un prompt est un string et dans switch tu test des nombres pas des string.

          Sujet résolu

          Tu peux passer le sujet à "résolu" (bouton en haut à droite du sujet) et cliquer sur les pouces levés des messages qui t'ont aidé⋅e ;)

          >> (Je n'arrive pas à écrire choix comme tu l'as fait).

          En bas à gauche de la zone ou tu écris cliquer sur le lien "HTML" ce qui ouvre la boite de dialogue d'édition html du message. Tu peux y écrire certaine balise dont <code>, ce qui donne :

          Un code

          • Partager sur Facebook
          • Partager sur Twitter

          Calculatrice

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          • Editeur
          • Markdown