[C++] Matrice indice riga somma massima

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
vfabrisv94
Prode Principiante
Messaggi: 45
Iscrizione: sabato 7 marzo 2015, 15:42
Sesso: Maschile

[C++] Matrice indice riga somma massima

Messaggio da vfabrisv94 »

Salve a tutti, dovrei creare un programma in cui devo calcolare l'indice riga di somma massima in una matrice. Sapete dirmi come posso calcolarla ?
minomic
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 304
Iscrizione: giovedì 26 maggio 2011, 14:19
Desktop: cinnamon
Distribuzione: Linux Mint 17.2 Rafaela x86_64

Re: c++ matrice indice riga somma massima

Messaggio da minomic »

Ciao,

puoi affrontare il problema come segue:
- scrivi una funzione che riceve in ingresso una riga di una matrice (o anche la matrice e l'indice di una riga) e restituisce la somma dei suoi elementi
- scorri la matrice e per ogni riga calcoli la somma sfruttando la funzione di prima
- trovi la somma massima con il classico algoritmo: all'inizio imposti il massimo al valore della prima somma, poi aggiorni se trovi un valore maggiore

Facci sapere se hai altri dubbi.
vfabrisv94
Prode Principiante
Messaggi: 45
Iscrizione: sabato 7 marzo 2015, 15:42
Sesso: Maschile

Re: [C++] Matrice indice riga somma massima

Messaggio da vfabrisv94 »

Grazie della risposta.

Io ho fatto in questo modo :

Codice: Seleziona tutto

for(int r=0; r<righe; r++)
{
    somma=0;
    for(int c=0; c<colonne; c++)
    {
        somma+=matrix[r][c];
        if(r==0)
        {
           riga_max=somma;
           ind_max=0;
        }
          else
        {
          if(somma>riga_max)
        {
            riga_max=somma;
            ind_max=r;
        }
        }
    }
}

Secondo voi ho fatto bene ? O avrei doovuto farlo in un'altro modo ?
minomic
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 304
Iscrizione: giovedì 26 maggio 2011, 14:19
Desktop: cinnamon
Distribuzione: Linux Mint 17.2 Rafaela x86_64

Re: [C++] Matrice indice riga somma massima

Messaggio da minomic »

La parte in cui fai if(r==0) ecc. dovrebbe essere fuori dal ciclo for interno. Infatti prima calcoli la somma degli elementi di una certa riga e poi fai le altre considerazioni.
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 4 ospiti