package hu.sieve; import java.util.ArrayList; import java.util.Scanner; public class SieveMethod { int limits; ArrayList number = new ArrayList(); SieveMethod() { limits = 0; } private void setLimits(int lim) { limits = lim; for (int i = 2; i <= lim; i++) { number.add(i); } } private void getPrime() {// 筛选出素数 for (int i = 0; i < number.size(); i++) { for (int j = i + 1; j < number.size(); j++) { if (number.get(j) % number.get(i) == 0) { number.remove(j); j--; } } } } private void printPrime() {// 打印出素数 for (int i = 0; i < number.size(); i++) { System.out.print(number.get(i) + " "); } } public static void main(String[] args) { SieveMethod prime = new SieveMethod(); Scanner scanner = new Scanner(System.in); int num = scanner.nextInt(); prime.setLimits(num); prime.getPrime(); prime.printPrime(); } }
java筛选法求素数
最新推荐文章于 2022-08-19 14:25:01 发布