用java求一个数之后的第一个素数,代码如下,怎么输出该素数?

2025年03月23日 08:20
有2个网友回答
网友(1):

加一个flag吧。

public class Prime03 {
    public static void main(String[] args){
        System.out.println("该程序是求6后面的一个素数");
        int i;
        int j;
        for(i=6;;i++){
         boolean flag = true;
            for(j=2;j<=i/2;j++){
                if(i%j==0){
                    flag = false;
                    break;
                }else if(i%j!=0){
                    continue;
                }else{
                    break;
                }
            }
            if(flag) {
             System.out.println(i);
             break;
            }
        }
    }
}

网友(2):

import java.util.Scanner;
 
public class Tidy
{
    public static void main(String[] args)
    {
        Scanner scan = new Scanner(System.in);
        while(true)
        {
            System.out.println("输入一个数:");
            try
            {
                int num = scan.nextInt();
                for(int i = num + 1;; i++)
                {
                    boolean isPrime = true;
                    for(int j = 2; j < i; j++)
                    {
                        if(i % j == 0)
                        {
                            isPrime = false;
                            break;
                        }
                    }
                    if(isPrime)
                    {
                        System.out.println(num + " 后面的第一个素数是: " + i);
                        System.out.println();
                        break;
                    }
                }
            }
            catch(Exception e)
            {
                scan.close();
                break;
            }
 
        }
    }
}