Boucle WHILE

Résolu/Fermé
Kyukuro Messages postés 9 Date d'inscription vendredi 18 avril 2014 Statut Membre Dernière intervention 19 mars 2016 - 19 avril 2014 à 13:47
Kyukuro Messages postés 9 Date d'inscription vendredi 18 avril 2014 Statut Membre Dernière intervention 19 mars 2016 - 19 avril 2014 à 15:17
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

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
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
19 avril 2014 à 13:50
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)  {
0
Kyukuro Messages postés 9 Date d'inscription vendredi 18 avril 2014 Statut Membre Dernière intervention 19 mars 2016
19 avril 2014 à 14:31
 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 :/
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
Modifié par KX le 19/04/2014 à 14:41
Tu as fait un test
v == x + v;
alors qu'il aurait fallu faire une affectation
v = x + v;
!
0
Kyukuro Messages postés 9 Date d'inscription vendredi 18 avril 2014 Statut Membre Dernière intervention 19 mars 2016
19 avril 2014 à 15:17
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 !
0