2016-08-09 42 views
2
var a = prompt("Please write an integer number greater than 0"); 
while ((a <= 0) || (Math.round(a) != a)) { 
    alert("Number that you have wrote is wrong, please write another one."); 
    var a = prompt("Please write an integer number greater than 0"); 
}; 
var i; 
var sum; 
for (i = 0; i <= a; i++){ 
    var s = sum += i; 
}; 
    document.write("your sum till your number is = " + s); 

Ich habe versucht, Benutzer zu bitten, eine Ganzzahl größer als 0 zu schreiben und danach auf dem Bildschirm Sum bis diese Zahl zu schreiben, aber es ist etwas falsch mit der Antwort welche ist so < < Ihre Summe bis Ihre Nummer ist = NaN >>; Kann mir jemand mit diesem Fehler helfen? Vielen Dank im Voraus. DeklarierenInteger Verifikation und Summe bis es in js

+2

Warum haben Sie 's' so gut wie' sum'? Der eine oder der andere ist genug, aber Sie müssen es auf "0" initialisieren, bevor Sie beginnen, es hinzuzufügen (andernfalls ist es "undefiniert" und "undefined + 0" ist "NaN" und "NaN + 1" ist " NaN' usw.). – nnnnnn

+0

das ist, weil ich verschiedene Möglichkeiten ausprobiert habe, aber keiner war gut, und ich habe vergessen zu löschen << var s ...>> –

Antwort

0
  1. var sum = 0;

  2. In der Schleife führen sum += i;

Beispiel:

var a = prompt("Please write an integer number greater than 0"); 
 

 
while ((a <= 0) || (Math.round(a) != a)) { 
 
    alert("Number that you have wrote is wrong, please write another one."); 
 
    var a = prompt("Please write an integer number greater than 0"); 
 
} 
 

 
var i; 
 
var sum = 0; 
 

 
for (i = 0; i <= a; i++){ 
 
    sum += i; 
 
}; 
 
    document.write("your sum till your number is = " + sum);