问题:编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次,直到最后一张牌;…再依次5的倍数的牌翻一次,6的,7的直到以52为基数的翻过,输出:这时正面向上的牌有哪些?
public class test02 {
public static void main(String[] args) {
int[] paper=new int[52];//存放翻拍次数
for (int i = 0; i < 52; i++) {
paper [i]=0;//初始为0
}
for (int i = 2; i <= 52; i++) {//以二为基数
for(int j = i; j <= 52; j++){
if (j%i==0){
paper[j-1]++;
}
}
}
System.out.println("正面向上的牌有:");
for (int i = 0; i < 52; i++) {
if (paper[i]%2==0){
int x=i+1;
System.out.print(x+" ");
}
}
}
}