gpt4 book ai didi

java - 用Java计算数组的平均值/最大值/最小值

转载 作者:行者123 更新时间:2023-12-01 23:04:33 25 4
gpt4 key购买 nike

我的代码将读取名为“QuizScores.txt”的文件中的数字列表。但是,在此文件中,某些数字包含字母。我已经告诉我的程序忽略这些实例并转到下一个数字。现在我的问题是,如果我的代码一次只读取一行,我需要它查看整个文件,读入它,计算平均值、最大值和最小值,最后将其输出到名为“的文件” QuizStats.txt”。任何对此的帮助将不胜感激!谢谢!

测验分数:

45
63
74g
34.7
75
4
8
15
16
23
42
67f
34
67

代码:

import java.io.*;

public class ScoreReader {


public static void main(String[] args) {
BufferedReader reader = null;

try {
String currentLine;

reader = new BufferedReader(new FileReader("QuizScores.txt"));
while ((currentLine = reader.readLine()) != null) {

int sum = 0;
String[] nums = currentLine.split("\\s+");
for (int i = 0; i < nums.length; i++) {
try{
double num = Integer.parseInt(nums[i]);
if (num != -1) {
sum += num;
}
} catch( NumberFormatException err )
{

}
}

System.out.println(sum);
}
} catch (IOException err) {
err.printStackTrace();
}
catch (NumberFormatException err) {}
finally {
try {
if (reader != null){
reader.close();
}
}
catch (IOException err) {
err.printStackTrace();
}
}
}
}

最佳答案

double min = 0.0;
double max = 0.0;
int count = 0;



sum += num;
count++;
if (num > max) {
max = num;
}
if (num < min) {
min = num;
}
double avg = (double) sum/count;

那么 avg、sum、min 和 max 都是已知的。我可能会从一开始就采取不同的方法,但上面的代码应该适用于您的代码。不过我还没有运行过。

关于java - 用Java计算数组的平均值/最大值/最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22996974/

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