判断一个数是否为质数(Java)
常用方法:
System.out.println("请输入一个数:");
Scanner sc=new Scanner(System.in);
int x =sc.nextInt();
int i;
boolean flag=true;
for(i=2;i<x;i++){
if(x%i==0)
flag=false;
break;
}
if(flag)
System.out.println("是质数");
else
System.out.println("不是质数");
优化改进:
如果有一个数能被另外两个数整除,那么其中有个数肯定小于这个数的平方根,另外一个数肯定大于这个数的平方根。
System.out.println("请输入一个数:");
Scanner sc=new Scanner(System.in);
int x =sc.nextInt();
int i;
boolean flag=true;
for(i=2;i<=Math.sqrt(x);i++){
if(x%i==0)
flag=false;
break;
}
if(flag)
System.out.println("是质数");
else
System.out.println("不是质数");