素?cái)?shù)是指只能被1和它本身整除的正整數(shù)。在Java中,我們可以使用循環(huán)和條件判斷語句來求出一定范圍內(nèi)的所有素?cái)?shù)。下面是一個(gè)求素?cái)?shù)和的示例程序:
public class SumOfPrimes { public static void main(String[] args) { int limit = 100; // 求1到100內(nèi)的素?cái)?shù)和 int sum = 0; // 用于存儲素?cái)?shù)的和 for (int i = 2; i<= limit; i++) { boolean isPrime = true; for (int j = 2; j< i; j++) { if (i % j == 0) { isPrime = false; break; } } if (isPrime) { sum += i; } } System.out.println("1到" + limit + "內(nèi)的素?cái)?shù)和為:" + sum); } }
在上面的程序中,我們首先定義了一個(gè)變量limit來表示要求的范圍,然后定義了一個(gè)變量sum來存儲素?cái)?shù)的和。接著使用兩個(gè)循環(huán)分別遍歷1到limit內(nèi)的所有整數(shù),判斷它是否為素?cái)?shù)。如果是素?cái)?shù),則將它加入到sum中。
其中,外層循環(huán)控制遍歷的范圍,內(nèi)層循環(huán)用于判斷當(dāng)前數(shù)是否為素?cái)?shù)。具體來說,如果某個(gè)數(shù)i能被2到i-1之間的任意一個(gè)數(shù)整除,則說明它不是素?cái)?shù),將isPrime標(biāo)記為false。如果isPrime為true,則說明當(dāng)前數(shù)為素?cái)?shù),將它加入到sum中。
最后,我們使用System.out.println語句輸出結(jié)果,得到1到100內(nèi)的素?cái)?shù)和為:
1到100內(nèi)的素?cái)?shù)和為:1060