Базовая его программа выполняет ввод 6 чисел от пользователя, сохраняет их в массиве, вычисляет их Среднее и Режим. Также подсчитайте, сколько чисел больше среднего. Код моей программы, где я ошибаюсьКак я могу найти режим в массиве?
Мое значение верно, но у меня проблема в режиме.
упаковка p18;
import java.util.Arrays; импорт java.util.Scanner;
public class P18 {
public static void main(String[] args) {
Scanner S=new Scanner(System.in);
int[] arr1=new int [6];
for (int i = 0; i < 6; ++i) {
int g = S.nextInt();
arr1[i] = g;
}
int input=6;
double total=0d;
double mean;
for(int i=0;i<input;i++)
{
total=total+arr1[i];
}
mean= total/input;
System.out.println("the mean is:" + mean);
PROBLEM STARTS FROM HERE MODE PORTION
int max=0;//problem starts from here
int maxFreq=0;
Arrays.sort(arr1);
max = arr1[arr1.length-1];
int[] count = new int[max + 1];
for (int i = 0; i < arr1.length; i++) {
count[arr1[i]]++;
}
for (int i = 0; i < count.length; i++) {
if (count[i] > maxFreq) {
maxFreq = count[i];
}
}
for (int i = 0; i < count.length; i++) {
if (count[i] == maxFreq) {
return i;
}}
return -1;
}}
http://stackoverflow.com/questions/1053843/get-the-element-with-the-highest-occurrence-in-an-array –