Matrice da file

di il
6 risposte

Matrice da file

Leggere una matrice da file e poi fare la somma degli elementi presenti in ogni riga e ordinare tale somma in maniera crescente.
Usare allocazione dinamica


Esempio 2 6 7 Somma 15
3 8 0 11.
4 7 1 12
Ordine crescente 11 12 15

6 Risposte

  • Re: Matrice da file

    Fatto!
  • Re: Matrice da file

    Si ma ho fatto un errore, non bisognava copiare in un vettore, ma restituire la matrice ordinata per valori crescenti della somma
  • Re: Matrice da file

    Scusa Gioia, ma ancora non hai capito che non si utilizza cosi' il forum. Avevi già scritto in questo modo ... non hai capito le risposte?

    Proponi quello che hai scritto tu e dai qualche indicazione su cosa hai provato e cosa non ti riesce.

    Altrimenti come si fa a discutere senza codice né problema? Si immagina? E comunque, NON si scrive il codice del compito AL POSTO TUO ma si danno suggerimenti. Compreso?
  • Re: Matrice da file

    [

    return EXIT_FAILURE;
    for(int i = 0; i < r; i++) {
    for(int j = 0; j < c; j++) {
    f >> m[j];
    somma = somma + m[j];
    }
    vettore = somma;
    somma = 0;
    }
    cout <<"\n";
    cout <<"Matrice in Input: \n";
    stampaMat (m, r, c);
    // stampaVett (vettore,r);
    int temp;
    for(int i=0; i<r-1; i++)
    {
    int min = i;

    for(int j=i+1; j<r; j++)
    if(vettore[j] <vettore[min]) //cambiare questa condizione per invertire l'ordine
    min = j;
    temp=vettore[min];
    vettore[min]=vettore;
    vettore=temp;
    }
    //stampa
    cout <<"Vettore Ordinato: \n";
    for (int n=0; n<r; n++)
    cout << vettore[n] << " ";
    cout << "\n";
    f.close();
    }
    return EXIT_SUCCESS;

    }

    void stampaMat(int const* const* m, int r, int c) {
    for(int i = 0; i < r; i++) {
    for(int j = 0; j < c; j++) {
    cout << m[j] << " ";
    }

    cout << endl;
    }
    }

    int** creaMat(int r, int c) {
    int i;
    int** m;
    m =


    [/code]
  • Re: Matrice da file

    Io ho scritto questo ma così lo copia in un vettore, invece io devo restituire a video una matrice ordinata per valori crescenti della somma
  • Re: Matrice da file

    Consiglio ... quando ordini il vettore delle somme, utilizza anche un altro vettore di uguali dimensioni in cui all'inizio hai inserito il valore dell'indice.
    Ad esempio, se le righe r sono 5, crea un altro vettore che contenga i valori 0, 1, 2, 3, 4.
    Quando fai l'ordinamento e scambi i valori del primo vettore, scambia anche quelli del secondo vettore. Alla fine dell'ordinamento avrai il secondo vettore che conterrà, ad esempio, 3 2 4 0 1
    A questo punto, leggi questo vettore e scrivi le righe della matrice corrispondenti, ovvero, sempre nell'esempio,

    la riga 3
    la riga 2
    la riga 3
    la riga 0
    la riga 1
Devi accedere o registrarti per scrivere nel forum
6 risposte