gpt4 book ai didi

java - 为什么4打印为质数

转载 作者:行者123 更新时间:2023-11-29 09:36:19 24 4
gpt4 key购买 nike

我有一个数组,我想知道这个数组中的质数是多少。我知道数字 4 不是“质数”,但它仍然打印出数字 4我错过了什么?我知道我不能添加第二个 if:"if (isPrime && number != 4 ) 但我只想了解我的代码有什么问题以及为什么打印数字 4谢谢

    int numbe []= {1,2,3,4,5,6,7,8,9,10};

System.out.println("Prime Numbers are:");
for(int number : numbe)
{
boolean isPrime =true;
for (int i = 2; i < number / 2 ; i++)
{
if ((number % i) == 0)
{
isPrime = false;
break;
}
}
if (isPrime)
System.out.println("Prime Number: " + number);
}

最佳答案

你必须如下更改内部for循环

    for (int i = 2; i <= number / 2 ; i++) {
...
}

否则为 4你永远不会进入循环(4/222 < 2false 对于第一次迭代)和变量 isPrime遗迹 true .

关于java - 为什么4打印为质数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50582512/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com