Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26
  1. #1

    [c] calcolare la moda in un array

    Ciao a tutti, volevo chiedervi se qualcuno poteva darmi qualche consiglio per quanto riguarda il calcolo di una moda all'interno di un vettore(di interi)..Non saprei da dove iniziare..Qualcuno potrebbe darmi qualche consiglio??grazie mille!

  2. #2
    A mano come faresti?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    eh a mano è facile, basta guardare un insieme di numeri e quello con frequenza maggiore rappresenta la moda.Ma a livello di programmazione non saprei da dove partire.

  4. #4
    "Basta guardare" se si tratta di 10 numeri; se si trattasse di 2000 numeri come faresti?
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,464
    Originariamente inviato da fabiranni
    eh a mano è facile, basta guardare un insieme di numeri e quello con frequenza maggiore rappresenta la moda.Ma a livello di programmazione non saprei da dove partire.
    Tu "guardi" 100 numeri e individui subito "quello con frequenza maggiore"?

    Scomponi in maniera dettagliata i passi che compi, anche se non te ne rendi conto ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  6. #6
    l'array deve essere non superiore a 20 elementi..fino alla creazione ecc lo so fare, anche media, varianza, massimo e minimo..ma la moda non so da dove partire..

  7. #7
    Non c'entra la dimensione, l'algoritmo di base è sempre quello... ribadisco, come faresti a mano per trovare la moda di un array di dimensioni non indifferenti?
    Amaro C++, il gusto pieno dell'undefined behavior.

  8. #8
    sicuramente passo passo...e tenendo l'array ordinato in valore min > valore max
    Alla batteria dai retta ballA

  9. #9
    oppure una cosa tipo questa:

    codice:
    #include <iostream>
    #include <map>
    using namespace std;
    
    #define length(x) (sizeof (x) / sizeof *(x))
    
    int main()
    {
    	int a[] = {1,2,9,5,6,4,8,1,2,1,7,9,8,9,9,9,9,9};
    
    	map<int,int> freq;
    
    	for ( size_t i = 0; i < length ( a ); i++ )
    	{
    		++freq[a[i]];
    	}
    
    	map<int,int>::const_iterator it = freq.begin();
    
    	while ( it != freq.end() )
    	{
    		cout<< it->first <<": "<< it->second <<endl;
    		++it;
    	}
    
    	return 0;
    }
    Alla batteria dai retta ballA

  10. #10
    Originariamente inviato da gianvituzzi
    oppure una cosa tipo questa:
    Occhio, la richiesta riguarda il C. Comunque (con i dovuti adattamenti per farla andare in C) può essere una soluzione.
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.