package hello;
import java.util.Scanner;
//求是否素数
public class Prime {
public static void main(String[] args) {
// TODO 自动生成的方法存根
//调用扫描器
Scanner s=new Scanner(System.in);
int num=s.nextInt();
int i;
for(i=2;i<num;i++) {
if(num%i!=0) {
System.out.println("是素数");
break;
}else {
System.out.println("不是素数");
break;
}
}
if(num==2) {
System.out.println("是素数");
}
s.close();//关闭扫描器
}
}
上述的有问题,改正如下。上面那个怎么错的。懵懵的,我太菜了。
package 二一年1月28;
import java.util.Scanner;
//求是否素数
public class Prime {
public static void main(String[] args) {
// TODO 自动生成的方法存根
//调用扫描器
Scanner s=new Scanner(System.in);
int num=s.nextInt();
if(num<0){
System.out.println("输入错误");}
else if(num==1||num==0){
System.out.println(num+"非素数也非合数");}
else {
if(num==2) {
System.out.println("是素数");
}
boolean isPrime=true;
for(int i=2;i<num;i++) {
if(num%i==0) {
isPrime=false;
break;
}
}
if(isPrime==true) {
System.out.println(num+"是素数");
}else {
System.out.println(num+"非素数");
}
s.close();//关闭扫描器
}
}
}