2
任何人都可以告訴我下面的代碼有什麼問題嗎? 我想打印所有小於41的素數,但它也打印15,21不是素數。使用ArrayList打印素數
import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
int x = 41;
List<Integer> lista = new ArrayList<Integer>();
for (int i = 1; i<=x; i++){
lista.add(i);
}
System.out.println(lista);
for (int i = 0; i<lista.size()-1; i++){
if (!isPrime(lista.get(i))){
lista.remove(lista.get(i));
}
}
System.out.println(lista);
}
public static boolean isPrime(int x){
boolean itIs = true;
for (int i = 2; i < x; i++){
if(x%i == 0){
itIs = false;
}
}
return itIs;
}
}
與遞減counter.Thx – bluesony