在Java中,求任意一段范圍內(nèi)的素?cái)?shù)和是一道常見的算法題目。今天,我們來學(xué)習(xí)如何使用Java語言編寫求100到200之間素?cái)?shù)和的程序。
public class PrimeNumberSum { public static void main(String[] args) { int sum = 0; for (int i = 100; i<= 200; i++) { if (isPrime(i)) { sum += i; } } System.out.println("100到200之間的素?cái)?shù)和為:" + sum); } public static boolean isPrime(int n) { if (n<= 1) { return false; } for (int i = 2; i<= Math.sqrt(n); i++) { if (n % i == 0) { return false; } } return true; } }
首先,在主函數(shù)中定義一個(gè)變量sum來保存素?cái)?shù)和的值。接著,使用for循環(huán)遍歷100到200之間的數(shù)。如果當(dāng)前數(shù)是素?cái)?shù),則加入到求和變量sum中。
最后,打印出素?cái)?shù)和的結(jié)果。
而判斷一個(gè)數(shù)是否為素?cái)?shù),則可以編寫一個(gè)函數(shù)isPrime來實(shí)現(xiàn)。首先,如果該數(shù)小于等于1,則直接返回false。
接著,使用for循環(huán)從2開始遍歷到該數(shù)的平方根。如果該數(shù)能被任何一個(gè)小于它的正整數(shù)整除,則不是素?cái)?shù),返回false。否則,該數(shù)是素?cái)?shù),返回true。
以上就是Java求100到200素?cái)?shù)和的代碼和算法分析。如果大家掌握了這個(gè)思路,就可以擴(kuò)展為求任意一段范圍內(nèi)的素?cái)?shù)和。