Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    6

    [C] Massimo di ogni riga della matrice

    Ciao a tutti, ho una matrice di dimensioni variabili ( nel senso che ogni volta che avvio il programma devo impostare il numero di righe ed il numero di colonne) e devo trovare il valore massimo di ogni riga della matrice. Per il momento riesco a trovare solamente il valore massimo di tutta la matrice, ma non di ogni riga. Qualcuno può aiutarmi? Grazie mille

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Che vuoi dire?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    6
    ho una matrice, devo trovare il numero più grande di ogni riga :

    1 2 3
    4 5 6
    7 8 9 il massimo della riga 1 è 3, il massimo della riga 2 è 6, il massimo della riga 3 è 9.

    Dicevo che l'algoritmo della ricerca del valore massimo lo conosco e lo riesco ad applicare a tutta la matrice (quindi in questo caso il programma mi dirà che il valore massimo della matrice è 9), ma adesso il problema è diverso e non so come fare, sai aiutarmi? grazie

  4. #4
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    Se hai gia un algoritmo in grado di trovare il massimo di una matrice mxn allora applicalo a ciascuna delle m sottomatrici di dimensione (1,n).
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Appunto ... se sai come trovarlo in tutta la matrice, cercare il massimo in una riga è molto più semplice ...

    Partiamo dal codice che usi per trovare il massimo nella matrice ... mostralo.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  6. #6
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    Forse lui ha il problema che per tutta la radice il valore di ritorno è un solo, ma x tutte le righe invece sarebbero + valori. E' questo il tuo problema?
    Per gli Spartani e Sparta usa spartan Il mio github

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    6
    Originariamente inviato da linoma
    Forse lui ha il problema che per tutta la radice il valore di ritorno è un solo, ma x tutte le righe invece sarebbero + valori. E' questo il tuo problema?
    esatto, perchè pur facendo come mi stanno dicendo gli altri, come faccio a far ritornare tutti i vari valori ? infatti riesco a far ritornare solo il primo valore..

    codice:
    int massimo(matrice mat, int righe, int colonne){                                                       int i, j;
    int max= mat[0][0];
    for(i=0; i<righe; i++){
    for(j=0; j<colonne; j++){
    if(mat[i][j]>max)
    max=mat[i][j];
    }
    }
    return max;
    }

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Se è solo questo il problema, passa un vettore di valori, composto da tanti elementi quante sono le righe della matrice, e in ogni elemento del vettore restituisci il massimo per riga.

    Ovviamente la funzione massimo non restituirà più il valore (sarà void) e accetterà come argomento il puntatore al vettore che ti ho detto in cui scriverà i massimi.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    6
    codice:
    void massimo(matrice mat, vettore vet, vettore max, int righe, int colonne){                                     
    int i, j;
    max[0];
    mat[0][0];
    vet[0];
    
    for(i=0; i<righe; i++){
    for(j=0; j<colonne; j++){
    if(mat[i][j]>max[i]) max[i]=mat[i][j];
    vet[i]=max[i];
    }
    }
    }
    ho risolto così e funziona grazie a tutti per l'aiuto!

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    A cosa ti servono le righe

    max[0];
    mat[0][0];
    vet[0];

    e il vettore vet ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

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.