尝试制作HIT(x)。当Hit调用它时,将数组的元素(大于x)减少一个然后打印数组。和x也是一个包含一些元素的数组。例如。 AR[7 4 5 3]
和x= [4 2 5]
然后输出为[5 3 4 2]
。我正在尝试但没有得到相关的输出。我的代码只有在获取数组元素后才会终止。
import java.util.Scanner;
public class Kom1 {
static int[] array;
public void hit(int x) {
for (int i = 0; i < array.length; i++) {
if (array[i] > x) {
array[i] --;
}
}
printArray();
}
public void printArray() {
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
}
public static void main(String args[]) {
Scanner scanner = new Scanner(System.in);
int maxElements = scanner.nextInt();
array = new int[maxElements];
for (int i = 0; i < maxElements; i++) {
array[i] = scanner.nextInt();
}
}
}
答案 0 :(得分:0)
你的算法应该是这样的
for(int i=0;i<x.length;i++){
for(int j=0;j<array.length;j++){
if(array[j]>x[i]){
array[j]--;
}
}
}