在JAVA中,求素數和是一個經常出現的問題。在下面的例子中,我們將展示如何使用JAVA編寫一個程序,去求某一區間的素數和。
/** * 求素數和 */ public class PrimeNumberSum { public static void main(String[] args) { int lowerBound = 2; int upperBound = 100; int sum = 0; for (int i = lowerBound; i<= upperBound; i++) { if (isPrimeNumber(i)) { sum += i; } } System.out.println("[" + lowerBound + "," + upperBound + "]之間的素數和為:" + sum); } /** * 判斷給定的數是否為素數 * @param number 給定的數 * @return true-是素數,false-不是素數 */ private static boolean isPrimeNumber(int number) { if (number<= 1) { return false; } for (int i = 2; i * i<= number; i++) { if (number % i == 0) { return false; } } return true; } }
上面的代碼中,我們通過一個for循環,遍歷了區間內的每一個數,然后調用isPrimeNumber方法,判斷這個數是否為素數。如果是素數,則將這個數加到sum變量中。最終,我們輸出sum的值,就得到了這個區間內所有素數的和。
使用JAVA編寫求素數和的過程非常簡單。只需要一個for循環和一個isPrimeNumber方法,就可以解決問題。當然,如果要求更高的效率,可以使用更高級的算法,如Eratosthenes篩法,這里就不再贅述。