同时循环并输出数学运算符

时间:2014-10-28 16:08:05

标签: javascript while-loop

我试图创建一个输出值列表的while循环,将它们加在一起,并输出一个" ="最后的标志 即,如果用户输入数字5和12,输出将显示如下: 5 + 6 + 7 + 8 + 9 + 10 + 11 + 12 =总计

这就是我' while'循环现在看起来:

while(enteredNum1 <= enteredNum2){
    total += enteredNum1;
    document.write(enteredNum1 + " + ");
    enteredNum1++;
}

document.write("= " + total); 

我知道它总会附加&#34; +&#34;,但任何人都可以指出我正确的方向让最后一个值显示&#34; =&#34;而不是&#34; +&#34;再次?

4 个答案:

答案 0 :(得分:5)

替代;

var numbers = [];
while(enteredNum1 <= enteredNum2){
    total += enteredNum1;
    numbers.push(enteredNum1++);
}

document.write(numbers.join(" + ") + " = " + total); 

答案 1 :(得分:1)

正确的方法:

list = [];
total = 0;
enteredNum1 = parseInt(enteredNum1); // parseInt only if enteredNum1 can be a string
while(enteredNum1 <= enteredNum2) {
    total += enteredNum1;
    list.push(enteredNum1);
    enteredNum1++;
}

document.write(list.join(" + ") + " = " + total); 

答案 2 :(得分:0)

这应该有效:

total += enteredNum1;
document.write(enteredNum1);
enteredNum1++;

while(enteredNum1 <= enteredNum2){
    total += enteredNum1;
    document.write(" + " + enteredNum1);
    enteredNum1++;
}

document.write("= " + total); 

答案 3 :(得分:0)

任何简单的方法都是if语句检查循环是否会继续:

while(enteredNum1 <= enteredNum2) {
    total += enteredNum1;
    if (enteredNum1 + 1 <= enteredNum2) {
        document.write(enteredNum1 + " + ");
    } else {
        document.write(enteredNum1);
    }

    enteredNum1++;
}

document.write(" = " + total);

或者,将输出保存为字符串并取出&#34; +&#34;关闭使用substring也可以正常工作