用 java 怎么判断一个数是否为质数?

2024-11-27 01:36:07
推荐回答(2个)
回答1:

质数: 

public static boolean isPrime(int N){if( N < 2 ) return false;

for( int i = 2 ; i*i <= N; i++){if( N % i == 0) return false;return true;}

JAVA 编程方法:

public static void main(String[] args) {// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);for(int i=0;i<100;i++){
System.out.print("请输入数字:");int num1 = input.nextInt();if(num1==2||num1==3){
System.out.println(num1+"是质数");}else if(num1%2!=0&&(num1+1)%2==0){
System.out.println(num1+"是质数");}else{System.out.println(num1+"不是质数");

回答2:

应该是有函数吧
建议直接百度搜索
逻辑存在很大的问题,判断质素的守则是除了本身和1,其他数都不能将自己整除,所以楼主你应该做的事情是将你输入的数循环与2开始到你输入的数-1的数依次比较,有一次整除没有余数就说明不是素数。按照你的代码修改应该是:
bool flag=false;
for(int i=2;i{
if(num%i==0)
{
flag=true;
break;
}
}
接下来判断flag的值,如果是 true代表不是质数,flase的话代表是质数