Salve a tutti, qualcuno sa risolvermi questo problema??
l'applicazione funziona pero nn come è previsto... nn so dove sbaglio o cosa mi manca(variabili, codice...)
codice:
/*
Si sviluppi il metodo
public static ??? elementoPiuFrequente(int[] a)
che, preso in input un array di interi ‘a’ NON ORDINATO, restituisce come output una coppia di
interi, i cui elementi rappresentano l’elemento che occorre il maggior numero di volte nell’array e la
sua frequenza. Se ci sono più elementi con la stessa frequenza massima, restituirne uno qualsiasi
(es., il primo, l’ultimo, ecc.). NOTA: il tipo di ritorno e` stato lasciato volutamente indefinito, ‘???’,
poiché fa parte dell’esercizio decidere tale tipo ed eventualmente costruire una classe apposita che
vi permetta di restituire il risultato voluto (coppia di int).
Es.: [1, 2, 10, 10, 7] ?? (10, 2)
*/
import java.util.*;
public class OccorrenzaNum {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int dim = 5;
int tabella[] = new int[dim];
// Input dati
for (int i = 0; i < dim; i++) {
System.out.println("Inserisci elemento " + (i + 1));
tabella[i] = input.nextInt();
}
// Gestione dati
int aux1 = 0;
int aux2 = 0;
int counter1 = 0;
int counter2 = 0;
System.out.println("Elementi uguali");
for (int i = 0; i < dim - 1; i++) {
aux1 = tabella[i];
if (aux1 == (tabella[i]) && aux1 == (tabella[i + 1])) {
aux2 = aux1;
counter1++;
counter2 = counter1;
}
}
System.out.println("Risultato: " + "(" + aux2 + ", " + counter2 + ")");
System.out.println("Counter = " + counter2);
}
}
Grazie