Java 检查素数程序

什么是素数?

素数是指只能被 1 或它本身整除的数。例如,11 只能被 1 或它本身整除。其他素数 2、3、5、7、11、13、17……。

注意:0 和 1 不是素数。2 是唯一的偶素数。

Java 程序检查数字是否为素数

程序逻辑

  • 我们需要将输入的数字,例如 17,从 2 除到 17 并检查余数。如果余数为 0,则该数字不是素数。
  • 任何数字都不能被它本身的一半以上整除。所以我们只需要循环numberToCheck/2。如果输入是 17,一半是 8.5,循环将迭代 2 到 8 的值
  • 如果 numberToCheck 可以被另一个数字整除,则将 isPrime 标志设置为 false,然后退出循环。
public class PrimenumberToCheckCheck {
 
 public static void main(String[] args) {
  int remainder;
  boolean isPrime=true;
  int numberToCheck=17; // Enter the numberToCheckber you want to check for prime
        
  //Loop to check whether the numberToCheckber is divisible any numberToCheckber other than 1 and itself
  for(int i=2;i<=numberToCheck/2;i++)
  {
   //numberToCheckber is divided by itself
            remainder=numberToCheck%i;
            System.out.println(numberToCheck+" Divided by "+ i + " gives a remainder "+remainder);
            
       //if remainder is 0 than numberToCheckber is not prime and break loop. Else continue the loop
     if(remainder==0)
     {
        isPrime=false;
        break;
     }
  }
  // Check value true or false, if isprime is true then numberToCheckber is prime otherwise not prime
  if(isPrime)
     System.out.println(numberToCheck + " is a Prime numberToCheckber");
  else
     System.out.println(numberToCheck + " is not a Prime numberToCheckber");
    }
  }

预期输出

17 Divided by 2 gives a remainder 1
17 Divided by 3 gives a remainder 2
17 Divided by 4 gives a remainder 1
17 Divided by 5 gives a remainder 2
17 Divided by 6 gives a remainder 5
17 Divided by 7 gives a remainder 3
17 Divided by 8 gives a remainder 1
17 is a Prime numberToCheckber

查看我们的程序,查找1 到 100 之间的素数