Exo simple qui pose pblm en javascript

Fermé
vince33export Messages postés 9 Date d'inscription samedi 17 avril 2004 Statut Membre Dernière intervention 15 mai 2004 - 12 mai 2004 à 14:20
 dudule14 - 7 nov. 2008 à 20:18
Salut a tous.
En fait je révise le JavaScript language que j essaie de comprendre mais qui me pose d'énorme probléme.Les poly qu'on nous fourni en cours sont bad et j dois avoir le cerveau lent.lol
Mais la je dois écrire un programme JavaScript qui lit et additionne n nombre.

<html>
<head>
<title>Calcul la somme de n nombre</title>
<script language='JavaScript'>
var nbval = prompt('entrer le nombre de valeur : ');
var i=0;
var r=0;
var x=0;
while(i != nbval)
{
x=prompt('entrer un nombre : ');
i=i+1;
r=(r+x);
}
alert('la somme des n nombres est : '+r);
</script>
</head>
<body>

</body>
</html>
j ai fait sa mais le probléme que j essaie de résoudre, c'est qu'il ne me les aditionne pas, il les mets juste cote à cote.
Help me please...
Merci d'avance.
A voir également:

5 réponses

DaNot Messages postés 221 Date d'inscription mardi 30 septembre 2003 Statut Membre Dernière intervention 4 novembre 2005 163
12 mai 2004 à 14:32
Salut,

La somme (fontion +) représente ici une concatenation car les valeurs saisie sont sous forme de chaine de caracteres (string).
Essayes avec r = r + x.valueOf( );

Un bon site regroupant mal de choses sur Javascript :
http://www.toutjavascript.com/

DaNot
un Libre ouvert à la source...
0
dje-dje Messages postés 10417 Date d'inscription mardi 6 janvier 2004 Statut Modérateur Dernière intervention 28 janvier 2011 758
12 mai 2004 à 14:33
Quand tu fais:
x=prompt('entrer un nombre : ');
-> Je crois que x devient chaine de caractere dans l'operation...
Du coup, quand tu "ajoutes" x à r, il concatenes les chaines.

Dans la ligne ou tu additionnes r= (r+x) rajoutes une multiplication par 1:
r=(r+x)*1

a+
dje-dje

Il y a 10 types de personne dans le monde,
ceux qui comprennent le binaire et les autres
0
Yop,

fait un parseInt pour transformer en entier :

<html>
<head>
<title>Calcul la somme de n nombre</title>
<script language='JavaScript'>
var nbval = parseInt(prompt('entrer le nombre de valeur : '));
var i=0;
var r=0;
var x=0;
while(i != nbval)
{
x=parseInt(prompt('entrer un nombre : '));
i=i+1;
r=(r+x);
}
alert('la somme des n nombres est : '+r);
</script>
</head>
<body>

</body>
</html>
0
vince33export Messages postés 9 Date d'inscription samedi 17 avril 2004 Statut Membre Dernière intervention 15 mai 2004
12 mai 2004 à 15:06
merci a vous tous ...
je vais aller visite l'adresse DaNot, mais au niveau des fonctions j ai pas encore le niveau à mon avis, mais j vais regarder sa de plus près.
j avais pas pensé au parsInt ni a la multiplication par 1 mais ce sont de trés bonne idée.
Merci beaucoup pour votre aide précieuse.
Je vais essayer de réglé le probléme desuite.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
SOLUTION:

si data = 300 en string


temp = parseInt(data);
temp = temp + 1;


temp = 301 en chiffre
0