2

我正在创建一个外部 javascript 文件。这是为了家庭作业。我应该做的是确定用户输入的数字是否是质数,如果它是质数则显示一条消息。我编写了代码,编译了所有内容。但我似乎无法弄清楚,无论我输入什么数字,显示消息总是说那个数字是质数。任何人都可以帮忙吗?这是我的代码:

var UI; 
var TV;

var HITS;

UI = window.prompt("Enter a whole number to test as a prime number: \n", "0");
TV = parseInt(UI, 10);

var DD = TV;            //still produces same error
HITS = 0;

while (DD > 0)
{
if (TV % DD === 0)
{
    HITS++;

}       
else
{
    DD--;
}
}

if (HITS > 2)
{
document.write(UI + " is a NOT prime number");
}
else
{
document.write(UI + " is a prime number");
}
4

1 回答 1

3

我认为你应该var DD = TV;TV = parseInt(UI, 10).

如果你不希望它是无限的,你应该在 while 循环中减少 DD。

这是更正的代码

var UI = window.prompt("Enter a whole number to test as a prime number: \n", "0");
var TV = parseInt(UI, 10);
var HITS = 0;
var DD = TV;
while (DD > 0) {
    if (TV % DD === 0) {
        HITS++;
    }
    DD--;
}

if (HITS > 2) {
    document.write(UI + " is a NOT prime number");
} else {
    document.write(UI + " is a prime number");
}
于 2013-04-05T15:27:40.457 回答