gpt4 book ai didi

java - 数组元素不同于平均值且小于数字

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:36:25 24 4
gpt4 key购买 nike

我有一个小问题,也许任何人都可以帮助我。我有一个随机元素数组,然后计算平均值并从用户那里扫描一个数字。我正在寻找元素数组的数量与平均值的差异小于从用户扫描的数量。

public static double average(int[][] array){
double average = 0;
int sum = 0;
for(int i = 0; i < array.length; i++){
for(int j = 0; j < array.length; j++){
sum += array[i][j];
}
}
average = (double) sum/array.length;
return average;
}

public static void main(String[] args) {
Random rnd = new Random();
Scanner scan = new Scanner(System.in);

int[][] array = new int[4][4];
for(int i = 0; i < array.length; i++){
for(int j = 0; j < array.length; j++){
array[i][j] = rnd.nextInt(10);
}
}

int a = scan.nextInt();
average(array);
int elements = 0;
for(int i = 0; i < array.length; i++){
for(int j = 0; j < array.length; j++){
if(array[i][j]) {
// ?? need help here
}
}
}

最佳答案

这里:

average(array);

您正在调用您的平均方法...但您没有使用它的结果!

double averageForArray = average(array);

允许您稍后与该值比较,例如:

int deltaGivenByUser = scan.nextInt();

for(int i = 0; i < array.length; i++){
for(int j = 0; j < array.length; j++){
if(Math.abs(array[i][j] - average) >= deltaGivenByUser) {
...

注意事项:

  • 以上为“伪代码”级别;我没有通过编译器运行它;所以要小心细微的错误/拼写错误。我的代码旨在为您提供想法如何做事;它不适用于“复制/粘贴/解决”。
  • 请查看您的命名。像“a”这样的变量名不会说明任何内容。我的名字 deltaGivenByUser 可能并不完美,但至少它让一些知道了该变量的用途。
  • 然后仔细研究如何使用扫描仪;例如通过使用 hasNextInt()方法。现在,如果用户提供的不是数字,您的代码就会失败
  • 还要分开:你有一个计算平均值的好方法;您还可以创建另一种方法来接收用户提供的值;在主要方法之外进行处理

关于java - 数组元素不同于平均值且小于数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41482459/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com