Я использовал этот код для вычисления максимального значения и медианного элемента в массиве целых чисел, но когда я вызываю методы в моем классе клиента, оба этих метода производят выход ноль. Имя массива «сорт» и состоит из случайно сгенерированных чиселПоиск среднего и максимального значения массива в java
import java.util.*;
public class StudentGrades {
private int [] grades;
//Constructor
public StudentGrades (int students)
{
Random number = new Random();
grades = new int[students];
for (int i = 0 ; i < students ; i++)
{
grades[i] = number.nextInt(99) + 1;
}
}
double median;
public void median()
{
Arrays.sort(grades) ;
double median ;
if (grades.length % 2 == 0)
{
int indexA = (grades.length - 1) /2;
int indexB = (grades.length)/2;
median = ((double) (grades[indexA] + grades[indexB]))/2;
}
else
{
int medIndex = (grades.length-1)/2;
median = grades[ medIndex ];
}
}
public double getMedian()
{
return median;
}
int max;
public int getHighest()
{
for(int i = 0 ; i < grades.length - 1 ; i++)
{
int max = 0;
if(grades[i] > max)
{
max = grades[i];
}
}
return max;
}
В моем драйвере, я просто должен был доказать, что метод работал правильно, так что:
System.out.println(" The highest grade is" + grades.getHighest());
System.out.println("The median grade is" + grades.getMedian());
где ваш класс драйвера? это задание? –
как вы это назвали? – DnR
Я назвал его как: System.out.println («Высший сорт» + grades.getHighest()); \t \t System.out.println («Медианный сорт» + grades.getMedian()); – mcolston