gpt4 book ai didi

java - 求最后一列的平均值

转载 作者:行者123 更新时间:2023-12-02 11:59:47 24 4
gpt4 key购买 nike

所以我需要程序打印出每周平均气温的平均值,但我找不到如何做到这一点的解决方案。目前,我有一列将一周的平均气温打印为 System.out.print ,所以它不在二维数组中,但现在我需要找到这些平均值的平均值。我尝试使用 System.out.print(average/4);找到平均值,但打印出来的数字不正确。我应该如何为此编写代码?

import java.text.DecimalFormat;
import java.util.Scanner;

public class TwoDimArray {

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

// 1) Declare and allocate Storage
//Each day name is assigned to the array as a String so each name must be enclosed in apostrophes and each string must be separated by commas.
String[] days = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};
double[][] Temperature = new double[4][7];

// 2) Populate Array
for (int i = 0; i < Temperature.length; i++) {
for (int j = 0; j < Temperature[0].length; j++) {
//days[j] will print the proper day and "(i+1)" will print the proper day of the week
System.out.print("Enter " + days[j] + " Temperature " + "for Week " + (i + 1) + ": " + " ");
Temperature[i][j] = scan.nextDouble();
}

}
System.out.println();
System.out.println(" Weekly Temperature Report ");
System.out.println("Mon Tue Wed Thurs Fri Sat Sun Average");

double columnTotal, average;
// 4) Output Array

for (int i = 0; i < Temperature.length; i++) {
System.out.println();
columnTotal = 0;
for (int j = 0; j < Temperature[0].length; j++) {
System.out.print(Temperature[i][j] + "\t");
columnTotal += Temperature[i][j];
}
average = columnTotal / 7;
System.out.println(average);
}

System.out.println();
System.out.println("------------------------------------------------------------------");
int avg;
for (int i = 0; i < Temperature[0].length; i++) {
columnTotal = 0;
avg = 0;
for (int j = 0; j < Temperature.length; j++) {
columnTotal = columnTotal + Temperature[j][i];

}
System.out.print((columnTotal / 4) + " ");
System.out.print(average / 4);

}
}
}

最佳答案

确定对您的代码进行以下更改

  1. 声明平均值数组average[] = new double[Temperature.length];
  2. 替换此 average = columnTotal / 7 ; System.out.println(average);有了这个

    average[i] = columnTotal / 7 ; System.out.println(average[i]);所以我正在做什么将平均值存储在数组中。您将平均值存储在一个简单的变量中,该变量被一次又一次地覆盖,直到循环结束

  3. 最后将代码的最后一部分替换为

    列总数 = 0;

    for (int i = 0; i < average.length; i++) {
    columnTotal = columnTotal +average[i];
    }
    System.out.print((columnTotal / 4) + " ");

最后你的代码将如下所示

import java.text.DecimalFormat;
import java.util.Scanner;

public class TwoDimArray {

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

// 1) Declare and allocate Storage
//Each day name is assigned to the array as a String so each name must be enclosed in apostrophes and each string must be separated by commas.
String[] days = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};
double[][] Temperature = new double[4][7];

// 2) Populate Array
for (int i = 0; i < Temperature.length; i++) {
for (int j = 0; j < Temperature[0].length; j++) {
//days[j] will print the proper day and "(i+1)" will print the proper day of the week
System.out.print("Enter " + days[j] + " Temperature " + "for Week " + (i + 1) + ": " + " ");
Temperature[i][j] = scan.nextDouble();
}

}
System.out.println();
System.out.println(" Weekly Temperature Report ");
System.out.println("Mon Tue Wed Thurs Fri Sat Sun Average");

double columnTotal, average[] = new double[Temperature.length];
// 4) Output Array

for (int i = 0; i < Temperature.length; i++) {
System.out.println();
columnTotal = 0;
for (int j = 0; j < Temperature[0].length; j++) {
System.out.print(Temperature[i][j] + "\t");
columnTotal += Temperature[i][j];
}
average[i] = columnTotal / 7;
System.out.println(average[i]);
}

System.out.println();
System.out.println("------------------------------------------------------------------");

columnTotal = 0;
for (int i = 0; i < average.length; i++) {
columnTotal = columnTotal +average[i];
}
System.out.print((columnTotal / 4) + " ");
//System.out.print(average/4);

}
}

关于java - 求最后一列的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47357746/

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