Dla mojego projektu, muszę zrobić program, który pobiera 10 liczb jako dane wejściowe i wyświetla tryb tych liczb. Program powinien wykorzystywać dwie tablice i metodę, która pobiera tablicę liczb jako parametr i zwraca wartość maksymalną w tablicy.Jak mogę zlokalizować i wydrukować indeks maksymalnej wartości w tablicy?
Zasadniczo to, co zrobiłem do tej pory, to druga tablica do śledzenia liczby wyświetleń numeru. Patrząc na początkową tablicę, zobaczysz, że tryb wynosi 4. (Numer, który pojawia się najbardziej). W drugiej tablicy indeks 4 będzie mieć wartość 2, a zatem 2 będzie maksymalną wartością w drugiej macierzy. Muszę zlokalizować tę maksymalną wartość w mojej drugiej tablicy i wydrukować indeks. Moje wyniki powinny wynosić "4".
Mój program jest dobry, dopóki nie spróbuję wyprodukować "4", a próbowałem kilku różnych rzeczy, ale wydaje mi się, że nie działa prawidłowo.
Dziękuję za poświęcony czas!
public class arrayProject {
public static void main(String[] args) {
int[] arraytwo = {0, 1, 2, 3, 4, 4, 6, 7, 8, 9};
projecttwo(arraytwo);
}
public static void projecttwo(int[]array){
/*Program that takes 10 numbers as input and displays the mode of these numbers. Program should use parallel
arrays and a method that takes array of numbers as parameter and returns max value in array*/
int modetracker[] = new int[10];
int max = 0; int number = 0;
for (int i = 0; i < array.length; i++){
modetracker[array[i]] += 1; //Add one to each index of modetracker where the element of array[i] appears.
}
int index = 0;
for (int i = 1; i < modetracker.length; i++){
int newnumber = modetracker[i];
if ((newnumber > modetracker[i-1]) == true){
index = i;
}
} System.out.println(+index);
}
}
Przez zadanie domowe oznaczone pytanie jest bardziej stosowne wskazać na to, co jest złe z pracą Op, a następnie dostarczając dosłownego rozwiązania –
Tak, edytowałem to. – isah
ok, dziękuję- podążam za kodem i rozumiem to. Dzięki! – pearbear