对于有人点击的标题很难详细说明,但基本上问题就是这个。 用户输入他们拥有的学生数量
忽略每个输入下的输出,这就是我的测试,然后打印出每个学生的平均值。
我需要的是获得每个测试的平均值,测试是输入线,也就是10,12是测试1而11,13是测试2并且我将打印平均值
我有测试和学生的对象,并且最终设法得到学生项目打印平均值而不是测试,因为我不知道如何获得每行的第一个。
答案 0 :(得分:1)
对不起,伙计们我的问题不清楚,但我设法得到它。 这是我的答案。
"$1" "$2"
答案 1 :(得分:0)
以下是假设所有学生都参加所有考试
...
ArrayList tempM = new ArrayList();
for(int j = 0; j != s.length;j++ {
Double mark = Double.parseDouble(s[j].toString())
tempM.add(mark);
Print(tempM.get(j).toString());
stu.setMarks(tempM);
Test test = null;
if (tests.length < testCount) {
test = new Test();
tests.add(test);
} else {
test = tests.get(j);
}
// unknown ... test.addMark(mark)? test.setMark(stu, mark)? ... something
}
答案 2 :(得分:0)
你可能会遇到一个学生可能比另一个学生接受更多考试的问题。即。如果你为第二个学生输入11 22 33
然后10 20 30 40
会怎么样?
简单的解决方案,假设所有学生都进行相同数量的测试:
for (int i = 0; i<students.get(0).length; i++){ //Loop over the number of tests
int total = 0;
for (Student student : students){ //Loop over students
total += student.getMarks[0]; //Add the value for that test result for that student
}
Print("results for test " + i + ": " + total/students.size()); //print average
}
如果某些学生的测试比其他学生多 - 那么您需要更改解决方案以适应。