素数确定Javascript

Prime Number Determination Javascript

本文关键字:Javascript      更新时间:2023-09-26

我正在创建一个外部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");
}

我认为你应该把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");
}