Java 如何计算数组中数字的平均值?
Java How can I calculate the average of numbers in an array?
我坚持我的程序。它的作用基本上是将 100 个随机数生成一个数组。它以 4 行打印数字。之后,另一个for循环检查是否有数字可以被七整除,并且同时为偶数。如果有,它会将它们插入到另一个数组中。现在,我们不知道随机数组中有多少这样的数字,所以这基本上就是我坚持的地方。我有数组中数字的总和。但是不能计算元素的碎片。
import static java.lang.System.out;
import java.util.Random;
public class CSharp {
public static void main(String[] args) {
Random r = new Random();
int[] numbers = new int[100];
int[] canBeDividedBySeven = new int[100];
int c = 0;
int sum = 0;
int average = 0;
out.println("Random numbers: ");
for (int i = 0; i < numbers.length; i++) {
numbers[i] += r.nextInt(90) + 10;
out.print(numbers[i] + " ");
if (i % 35 == 0) {
out.print("\n");
}
}
out.println("\n\nNumbers that can be divided by 7 and are even: ");
for (int j = 0; j < numbers.length; j++) {
if (numbers[j] % 7 == 0 && numbers[j] % 2 == 0) {
out.print(numbers[j] + " ");
canBeDividedBySeven[c] += numbers[j];
}
}
out.println("\n\nThe sum of the numbers in the 'canBeDividedBySeven': ");
for (int y = 0; y < canBeDividedBySeven.length; y++) {
sum += canBeDividedBySeven[y++];
}
out.print(sum);
}
}
您缺少 1 个部分 - 在将其添加到数组 canBeDividedBySeven
时递增 c
。如果你这样做,你可以通过 (double) sum / c
.
得到平均值
基本上你的 canBeDividedBySeven
数组看起来像 [3283, 0, 0, 0, ..99 0's]
如果你增加 c (canBeDividedBySeven[c
++] += numbers[j];
) 它会看起来像 [14, 28, 14, 42, ...0, 0, 0]
,你可以用变量 c 找到这个数组的 "size"。实际大小始终为 100。
祝你好运!
我坚持我的程序。它的作用基本上是将 100 个随机数生成一个数组。它以 4 行打印数字。之后,另一个for循环检查是否有数字可以被七整除,并且同时为偶数。如果有,它会将它们插入到另一个数组中。现在,我们不知道随机数组中有多少这样的数字,所以这基本上就是我坚持的地方。我有数组中数字的总和。但是不能计算元素的碎片。
import static java.lang.System.out;
import java.util.Random;
public class CSharp {
public static void main(String[] args) {
Random r = new Random();
int[] numbers = new int[100];
int[] canBeDividedBySeven = new int[100];
int c = 0;
int sum = 0;
int average = 0;
out.println("Random numbers: ");
for (int i = 0; i < numbers.length; i++) {
numbers[i] += r.nextInt(90) + 10;
out.print(numbers[i] + " ");
if (i % 35 == 0) {
out.print("\n");
}
}
out.println("\n\nNumbers that can be divided by 7 and are even: ");
for (int j = 0; j < numbers.length; j++) {
if (numbers[j] % 7 == 0 && numbers[j] % 2 == 0) {
out.print(numbers[j] + " ");
canBeDividedBySeven[c] += numbers[j];
}
}
out.println("\n\nThe sum of the numbers in the 'canBeDividedBySeven': ");
for (int y = 0; y < canBeDividedBySeven.length; y++) {
sum += canBeDividedBySeven[y++];
}
out.print(sum);
}
}
您缺少 1 个部分 - 在将其添加到数组 canBeDividedBySeven
时递增 c
。如果你这样做,你可以通过 (double) sum / c
.
基本上你的 canBeDividedBySeven
数组看起来像 [3283, 0, 0, 0, ..99 0's]
如果你增加 c (canBeDividedBySeven[c
++] += numbers[j];
) 它会看起来像 [14, 28, 14, 42, ...0, 0, 0]
,你可以用变量 c 找到这个数组的 "size"。实际大小始终为 100。
祝你好运!