2015-04-22 260 views
0

我有点新来编程,我在测验中得到了这个问题。我需要编写一个JavaScript程序来读取用户的10个正值,然后总结3和5的倍数。for/while循环阅读用户输入

我甚至无法完成代码。帮帮我?

var x = new Array(); 
var total; 
x.push(parseFloat(window.prompt("enter a value",""),)); 
for (x.length<=10; i=0; i<10; i++) { 
    total += x[i] 
} 
else{ 
    document.write(total); 
} 
+0

我没有看到任何逻辑处理“3和5的倍数”。那么,真正的问题是什么? – user2864740

+0

考虑删除数组并使用:'var num = parseFloat(window.prompt(“enter a value”,“”))''。然后立即用'num'(基于某些条件)和另一个'sum'变量做一些事情。循环决定*提示用户多少次*(window.prompt是如此残酷的机制),但不影响输入*的使用方式*。 – user2864740

+1

你需要把你的提示放在for循环中,并添加if语句'num%3 == 0 || num%5 == 0''''''''''''''''''''''''''''''''' – jcubic

回答

1

你需要把你的提示功能在for循环中,并添加检查,如果数量是乘以3或5

var total; 
for (var i=0; i<10; i++) { 
    var num = parseFloat(window.prompt("enter a value","")); 
    if (num % 3 == 0 || num % 5 == 0) { 
     total += num; 
    } 
}  
document.write(total); 

UPDATE

var total; 
var i = 0; 
while (i<10) { 
    var num = parseFloat(window.prompt("enter a value","")); 
    if (num >= 0 && (num % 3 == 0 || num % 5 == 0)) { 
     total += num; 
     i++; 
    } 
}  
document.write(total); 
+0

我需要在参数中忽略<0的值,并且仍然将输入的值的计数设置为10,我在哪里包含该值? – Nouas

+0

@Nouas有点不同'while循环而不是'for' – jcubic

0

,谢谢,我确定总数= 0,以便总和后打印出一个值而不是NaN

var total = 0; 
var i = 0; 
while (i < 10) { 
    var num = parseFloat(window.prompt("enter a value", "")); 
    if (num >= 0 && (num % 3 == 0 || num % 5 == 0)) { 
     total += num; 
     i++; 
    } 
} 
document.write(total);