Matrix, array



  • wie kann von einer Matrix, bsp: rm[3][4] von jeder spalte einzeln den minimalwert ausgeben?

    ich bekomme es leider nur so hin, dass von der gesamten Matrix der Minimalwert zurückgegeben wird



  • @ShuraiyaKudo sagte in Matrix, array:

    ch bekomme es leider nur so hin, dass von der gesamten Matrix der Minimalwert zurückgegeben wird

    Warum?



  • weil eine aufgabe das so verlangt



  • @ShuraiyaKudo sagte in Matrix, array:

    weil eine aufgabe das so verlangt

    Ein Aufgabe verlangr von die, es nur für die ganze Matrix hinzubekommen? Faszinierend.



  • nein für jede spalte einzeln...also von spalte 1 minimalwert ausgeben , von spalte 2 ....



  • Wo genau ist denn das Problem, wie sieht dein Ansatz aus, was hast du ausprobiert? Bitte erkläre deinen Ansatz, deine Gedankengänge und deine Probleme dabei, wenn du wirklich Hilfe haben willst und nicht nur jemanden zum Lösen der Aufgabe suchst.



  • #include <iostream>
    using namespace std;
    
    int main()
    {
        int A[6][12];
        
        for(int i=0; i<6; i++)
        {
            for(int j=0; j<12; j++)
            {
                cout << "A["<<i<<"]["<<j<<"]= ";
                cin >> A[i][j];
            }
        }
    
    for(int i=0; i<6; i++)
        {
            for(int j=0; j<12; j++)
            {
                cout << A[i][j] << '\t';
            }
            cout << endl;
        }
        
        int min= A[0][0];
        
        int ind=0;
        
        for(int i=0; i<6; i++)
        {
            for(int j=0; j<12; j++)
            {
                if(A[i][j] < min)
                {
                    min = A[i][j];
                    ind=j;
                }
            }
        }
    
        cout << "Minimalwert: " << min << endl;
        
        cout << "Spalte mit max. Minimalwert: " << endl;
    
        for(int i=0; i<6; i++)
        {
            cout << A[i][ind] << " ";
        }
        cout << endl;
        
        return 0;
    }
    
    

    das ist mein Programm bisher...jedoch wird nur von der gesamten Matrix der Minimalwert ausgegeben und ich weiß nicht wie ich das für die einzelnen Spalten ausgeben kann



  • Tja, du müsstest wohl für jeweils jede Spalte die Zeilen betrachten und davon das Minimum ausgeben.



  • Wie war dein Gedankengang dabei?

    Ich habe einen generellen Ratschlag: zum Testen ist es doch höchst unpraktisch, wenn du immer erst 6*12 Zahlen eingeben musst!

    Ersetze deine Eingaberoutine durch irgendwas einfaches wie

    const int nRows = 2;
    const int nCols = 3;
    int a[nRows][nCols] = {{1,2,3}, {5,6,4}};
    

    Dann hast du schon einmal die Eingabe fest und machst dir das Testen einfacher.

    Noch ein Rat: Benutze Konstanten für die Größe der Matrix wie hier im Beispiel.



  • for(int i=0; i<3; i++)
        {
            int min= A[0][0];
           for(int j=0; j<4; j++)
           {
               if(A[i][j]<min)
               {
                   min=A[i][j];
               }
           }
           allmin[i]=min;
           cout << i+1 << ". min: " << allmin[i] << endl;
        }
    

    jetzt wird mir von jeder einzelnen Zeile der Minimalwert ausgegeben ...was müsste ich ändern damit von der Spalte ausgegeben wird?



  • @ShuraiyaKudo sagte in Matrix, array:

    int min= A[0][0];

    Was soll das?

    @ShuraiyaKudo sagte in Matrix, array:

    jetzt wird mir von jeder einzelnen Zeile der Minimalwert ausgegeben

    Das glaube ich nicht. Für gewisse Beispiel mag das so sein.

    @ShuraiyaKudo sagte in Matrix, array:

    was müsste ich ändern damit von der Spalte ausgegeben wird?

    Irgendwie Zeile und Spalte tauschen?



  • This post is deleted!

Log in to reply