素数
エラトステネスの篩っぽいものは実は金曜日にできたのだけど、
あくまで「っぽい」なので考え中。
*********ついき************
むしろまだ未完成です
できたーと思ったら9の倍数が素数扱いされている
直そう!
************************
import java.util.HashMap; import java.util.Map; public class HuruiSosuu { public static void main(String args[]) { int firstNum = 2; int lastNum = 100; Boolean judge = true; Map<Integer, Boolean> sosuuMap = new HashMap<Integer, Boolean>(); for (int i = firstNum; i <= lastNum; i++) { sosuuMap.put(i, judge); } for (int i = firstNum; i * i < lastNum && sosuuMap.get(i); i++) { for (int j = i + 1; j <= lastNum && sosuuMap.get(j); j++) { if (j % i == 0) { sosuuMap.put(j, false); } } } System.out.println(sosuuMap); } }
wikiに載っていたような、探索リストに入れるとかそういうことはしていないので・・・
i * i < lastNum
の部分はエラトステネスの篩のアルゴリズム通りなのだけど
うーん、自信ないです。