用“埃氏篩法”求2~100以內的素數。2~100以內的數,先去掉2的倍數,再去掉3的倍數,再去掉5的倍數,……依此類推
阿新 • • 發佈:2019-02-16
import java.util.ArrayList; import java.util.List; /** * @author Shicrom * @see 用“埃氏篩法”求2~100以內的素數。 * @classname 埃氏篩法的外文名稱 */ public class SieveOfEratosthenes { public static void main(String[] args) { /** * @number 宣告一個空的List集合 */ List<Integer> number = new ArrayList<Integer>(); System.out.print("用“埃氏篩法”求2~100以內的素數:\n"); for (int i = 0, y = 2; i < 98; i++, y++) { number.add(i, y); } // 給空的集合注入2到99的值,用於計算 for (int i = 0, y = 2; i < number.size(); i++, y++) { for (int j = 0; j < number.size(); j++) { if (number.get(j) % y == 0) { if (number.get(j) == y) { continue; } else { number.remove(j); // 去除能給自身取餘的數,保留自己 } } } System.out.print(number.get(i) + " "); } } }