質(zhì)數(shù)是指一個(gè)大于1的自然數(shù),除了1和它本身之外,不能被其他自然數(shù)整除的數(shù)。現(xiàn)在,我們來使用Java求出1到50之間所有質(zhì)數(shù)的和。
public class PrimeNumberSum { public static void main(String[] args) { int sum = 0; for (int i = 2; i<= 50; 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到50之間所有質(zhì)數(shù)的和為:" + sum); } }
上面的代碼中,我們使用了兩層for循環(huán)。外層循環(huán)從2開始到50結(jié)束,內(nèi)層循環(huán)從2開始到當(dāng)前數(shù)的前一個(gè)數(shù)結(jié)束。每當(dāng)內(nèi)層循環(huán)發(fā)現(xiàn)當(dāng)前數(shù)能夠被前面某個(gè)數(shù)整除時(shí),就將isPrime的值設(shè)為false,并跳出內(nèi)層循環(huán)。最后,如果isPrime的值仍然為true,就增加sum的值。
運(yùn)行上面的代碼,可以得到如下輸出:
1到50之間所有質(zhì)數(shù)的和為:328
這就是我們要求的1到50之間所有質(zhì)數(shù)的和。