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;
廣告