我想要在每个步骤中只考虑一个integer
,可以将array
中的所有integers
都可以整除的次数。 例如,最初如果我有array
:[2,4,2]
和count = 0
一个数组中的所有数字都可以被2整除的次数
步骤1
[1,4,2] , count=1
步骤2
[1,2,2] , count=2
步骤3
[1,1,2] , count=3
步骤4
[1,1,1] , count=4
我对这个问题的方法在下面给出:
代码
public static void main(String[] args) {
int[] ar={2,4,2};
int[] p=new int[ar.length];
int count=0;
for (int i=0;i<ar.length ;i++) {
if(ar[i]>=1){
ar[i]=ar[i]/2;
count++;
}
}
for (int x:ar) {
System.out.println(x);
}
System.out.println("Count:"+count);
}
输出
1
2
1
Count:3
在上面给出的代码的问题是,该array
被扫描一次,并且我要扫描的阵列,直至全部integers are no more divisible by 2
“我想扫描数组,直到所有整数大于或等于1” - 但它们从一开始就已经大于或等于1,并且它们仍然是这样。 – user2357112
我编辑了这个问题,我希望简化'array',以便不再有'整数'被2整除。 –