Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2012
    Messaggi
    62

    [c++]data una matrice memorizzare in un vettore i val minimi delle righe

    ciao a tutti!!
    devo scrivere un programma che data una matrice di n righe e m colonne,memorizzi in un vettore di uscita i valori minimi delle righe..
    sono riuscita a visualizzare il valore minimo di ogni riga,questo è quello che ho fatto
    codice:
    #include<iostream>
    #include<cstdlib>
    using namespace std;
    #define N 50
    #define M 60
    
    typedef int matrice[N][M];
    matrice a;
    typedef int vettore[50];
    vettore v;
    
    void inserimento(int&,int&,matrice);
    void min_righe(matrice,int&,int&,int&);
    
    void inserimento(int&n,int&m,matrice a){
         int i,j;
         cout<<"Di quante righe e' composta la matrice?";
         cin>>n;
         cout<<"E di quante colonne?";
         cin>>m;
         if(n>N||m>M) cout<<"ERRORE!!queste dimensioni non sono supportate"<<endl;
         else{
              for(i=0;i<n;i++){
                  for(j=0;j<m;j++){
                          cout<<"L'elemento di posizione "<<i<<j<<" e' ";
                          cin>>a[i][j];         
                                   }
                                   }
                          cout<<endl; 
              cout<<"La matrice a e' la seguente"<<endl;                     
              for(i=0;i<n;i++){
                 for(j=0;j<m;j++)
                    cout<<a[i][j]<<" ";
                    cout<<endl;          
                              } 
          
               }
                          }
                        
    void min_righe(matrice a,int&n,int&m,int&min){
         int i;
         int j;
        
         for(i=0;i<n;i++){
         min=a[i][0];
         for(j=1;j<m;j++){
                if(a[i][j]<min){
                min=a[i][j];
                 
                }
                }
             cout<<"il minimo della riga "<<i<<" vale "<<min<<endl;         
             }
             }
             
    int main(){
        int n;
        int m;
        int min;
        matrice a;
        vettore v;
        inserimento(n,m,a);
        min_righe(a,n,m,min);
        system("pause");
        }
    il problema è che non saprei come fare a memorizzare questi valori in un vettore..
    mi potete dare solo un suggerimento?

  2. #2
    codice:
    void min_righe(matrice a,int&n,int&m,int&min){
    	 int i;
         int j;
    	 int insieme_minimi[N];
        
         for(i=0;i<n;i++){
         min=a[i][0];
         for(j=1;j<m;j++){
                if(a[i][j]<min){
                min=a[i][j];
                 
                }
                }
         insieme_minimi[i]=min;    
    	 cout<<"il minimo della riga "<<i<<" vale "<<min<<endl; 
             }
    	 cout << "I minimi sono: ";
    	 for(int z=0; z<n; z++){
    	 cout << insieme_minimi[z] << " ";
    	 }
             }
    In pratica ho definito il vettore int insieme_minimi[N]; e all'interno del ciclo for più esterno ho aggiunto insieme_minimi[i]=min; , in modo che il minimo di ogni singola riga venga aggiunto al vettore.

    Alla fine della funzione min_righe() ho aggiunto un nuovo ciclo for per stampare gli elementi del nuovo vettore

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2012
    Messaggi
    62
    grazie mille

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.