Java 程式用於顯示小於給定數字的素數


假設您已將值設為 20,並且您必須顯示小於此值的素數,即本例中的 19。

以下示例顯示了小於給定數字的素數 −

示例

 現場演示

public class Demo {
   public static void main(String[] args) {
      int val = 20;
      boolean[] isprime = new boolean[val + 1];
      for (int i = 0; i<= val; i++)
         isprime[i] = true;
         // 0 and 1 is not prime
         isprime[0] = false;
         isprime[1] = false;
         int n = (int) Math.ceil(Math.sqrt(val));
      for (int i = 0; i<= n; i++) {
         if (isprime[i])
            for (int j = 2 * i; j<= val; j = j + i)
               // not prime
               isprime[j] = false;
      }
      int myPrime;
      for (myPrime = val; !isprime[myPrime]; myPrime--); // empty loop body
         System.out.println("Largest prime less than or equal to " + val + " = " + myPrime);
   }
}

輸出

Largest prime less than or equal to 20 = 19

上面,我們將以下內容設為非素數,因為 0 和 1 都是非素數 −

isprime[0] = false;
isprime[1] = false;

更新於: 30-7-2019

345 次瀏覽

啟動您的 職業生涯

透過完成課程獲得認證

開始
廣告