Java阵列最高/平均/中值/模式
无法正确打印中值、平均值和模式。它所需要的只是一些编码的移动和一些数字/单词的更改 节目:Java阵列最高/平均/中值/模式,java,arrays,Java,Arrays,无法正确打印中值、平均值和模式。它所需要的只是一些编码的移动和一些数字/单词的更改 节目: public static int StudentAverage(int [] array) //almost there, some random big code is in front of the wording? { int avg; int sum=0; for(int i=0;i<4;i++){ sum=sum
public static int StudentAverage(int [] array)
//almost there, some random big code is in front of the wording?
{
int avg;
int sum=0;
for(int i=0;i<4;i++){
sum=sum+array[i];
}
avg=sum/4;
System.out.println("The average is: " +avg);
return avg;
}
public static int median(int [] array) {
//i think this is way off also
int size = 0;
int[] grades = new int [size];
for(int i=0;i<size;i++){
grades[i]=0;
}
int i;
for( i=0;i<size;++i){
int count=0;
for (int j=0;j<size;++j){
if(grades[i]>grades[j]){
count++;
}
}
if(count==grades.length/4){
break;
}
System.out.print("The median is: "+grades[i]);
}
return grades[i];
}
public static int mode(int [] array) {
int maxValue = 0, maxCount = 0;
for (int i = 0; i < array.length; ++i) {
int count = 0;
for (int j = 0; j < array.length; ++j) {
if (array[j] == array[i]) ++count;
}
if (count > maxCount) {
maxCount = count;
maxValue = array[i];
}
}
return maxValue;
编辑
我快到了!这些提示非常有用!现在,我很难完成中位数和模式,还有一个很大的数字一直显示在我的平均打印之前
如果有人能给出提示之类的,我不要求直接回答。我正在从分享的帮助/提示中学习,谢谢!在某些方面仍然有点困惑,我们将不胜感激-再次感谢 一些提示:
- 在
方法中,查看您的最高的
相对于计算println
的循环的位置(进一步提示:它不是在循环之后)max
- 你为什么不把你的
数组传给成绩
和StudentAverage()
median()
- 在
中,为什么循环100次并将计算出的总和除以100StudentAverage()
- 在平均数前面打印的“随机”大数字根本不是随机的。仔细看看李>
- 从作业上看:“中位数等级将位于排序等级的中间”。<李>
public class StudentGradesClient {
public static void main(String [] args){
int [] grades = new int [4];
Random rand = new Random();
for (int i = 0; i < grades.length; i++)
{
grades[i] = rand.nextInt(100) + 1;
}
StudentGrades.AscendingSort(grades);
System.out.println ("Student Grades");
for (int i = 0; i<grades.length; i++)
System.out.print(grades[i] + "\t");
System.out.println();
StudentGrades.Highest(grades);
for (int i = 1; i < grades.length; i++)
System.out.print(grades[i]);
StudentGrades.StudentAverage(grades);
for (int i = 0; i<grades.length; i++)
//some random big number keep popping up before
System.out.println();
//not printing at all
StudentGrades.median(grades);
for (int i = 0; i<grades.length; i++)
System.out.println();
}
}
Student Grades
6 23 49 65
The highest grade is: 65
234965The average is: 35
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at studentgrades.StudentGrades.median(StudentGrades.java:66)
at studentgrades.StudentGradesClient.main(StudentGradesClient.java:32)
C:\Users\Marc\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 0 seconds)