Boucle WHILE

Résolu
Bonjour à tous et à toutes,
Mon objetctif:
Demander à un utilisateur le nombre de valeurs qu'ils souhaitent, puis lui les faire saisir et enfin lui proposer leur sommes.
Exemple :
---> Donnez moi le nombre de chiffre pour votre opération
--------- Mr X--> 3
---> Donnez le 1 chiffre :
--------- Mr X--> 8
---> Donnez le 2 chiffre :
--------- Mr X--> 7
---> Donnez le 3 chiffre :
--------- Mr X--> 45
---> Le résultat est 60

Mon code :
 function somme()  
{
var i=0;
var x=0;
var produit=0;
var n= window.prompt("Vous souhaitez faire une somme de combien de nombres ? (min:2)");

while (i < n); {
var x= window.prompt("Rentrer la valeur numéro "+i);
var produit = x + produit;
i++;
}

document.write("Le résultat est"+produit);
}
La fonction tourne en boucle lors de la seconde étape. Je demande donc votre aide pour résoudre ceci !

4 réponses

  1. salut,

    tu as mis :

    v == x + v; et c'est faux. Il faut mettre :

    v = x + v;

    ensuite second problème :

    Tes prompt pennent tes chiffres pour des chaines de caractères. Il faut utiliser :

    parseInt() pour les chiffres entier

    parseFloat() pour les virgules

    ton code corrigé :

    <script type="text/javascript">
    			function somme() {
    				i = 0;
    				x = 0;
    				v = 0;
    				n = window.prompt("Vous souhaitez faire une somme de combien de nombres ? (min:2)");
    
    				while (i < n) {
    
    					x = prompt("Rentrer la valeur numéro " + i);
    					v = parseInt(x) + v;
    					i++;
    				}
    
    				document.write("Le résultat est" + v);
    				
    			}
    			somme();
    		</script>
    

    ¸,ø¤º°'°º¤ø,¸¸,ø¤º° un (0n53!1 ? f0rm473... °º¤ø,¸¸,ø¤º°'°º¤ø,¸
    1. Modérateur
      Bonjour,

      Il ne faut pas mettre de point-virgule après un while, sinon ce que tu as entre accolade n'est plus du tout lié à la boucle.

      while (i < n)  {
      1.  function somme()  
        {
        i=0;
        x=0;
        v=0;
        n= window.prompt("Vous souhaitez faire une somme de combien de nombres ? (min:2)");

        while (i < n) {

        x= window.prompt("Rentrer la valeur numéro "+i);
        v == x + v;
        i++;
        }

        document.write("Le résultat est"+v);
        }

        Très bien merci, maintenant tout fonctionne sauf le résultat il m'indique 0 à chaque fois ! C'est à dire l'initialisatio de ma variable v :/
        1. Modérateur
          Tu as fait un test
          v == x + v;
          alors qu'il aurait fallu faire une affectation
          v = x + v;
          !
      2. Merci beaucoup ! D'une part tu m'explique au détails près toutes mes erreurs et je t'en remercie et en plus tu le corriges, tu m'a beaucoup apporté merci encore !