Buonasera a tutti!
Sono alle prese con il seguente problema: Dato un'array di N interi, dire qual'è l'elemento che compare con maggior frequenza fra i numeri inseriti. Io ho pensato la seguente soluzione che però non si comporta in output come dovrebbe, ovvero mi restituisce sempre la prima posizione... Potreste aiutarmi indicandomi dove sbaglio??
Vi ringrazio anticipatamente per la pazienza e la cortesia! Scusate la mia inesperienza e gli eventuali errori.codice:#include <iostream> using namespace std; int main () { cout << "Inserisci dimensione array: "; int n; cin >> n; int a[n]; cout << "Inserisci elementi array" << endl; for (int i = 0; i < n; i++){ cin >> a[i]; } int freq = 0; int conta = 0; int piu_freq = 0; for (int i = 0; i < n; i++){ for (int j = 0; j < n; j++){ if (a[i] == a[j]) conta++; if (conta > freq){ freq = conta; piu_freq = a[i]; } conta = 0; } } cout << "Il piu' frequente e': " << piu_freq << endl; }![]()

Rispondi quotando