Szukanie elementu maksymalnego w tablicy dwuwymiarowej

0
Napisz program, który znajduje element maksymalny w tablicy dwuwymiarowej.
Rozmiar tablicy należy pobrać od użytkownika, gdzie n - liczba wierszy, m - liczba kolumn.
Użytkownik sam uzupełnia tablicę liczbami całkowitymi.
Należy wypisać tablicę z elementami podanymi przez użytkownika, a następnie wypisać znaleziony element maksymalny.

Hej wam, mam takie zadanie do zrobienia, potrzebowałbym waszej pomocy. Nie za bardzo wiem jak znaleźć element maksymalny. Na razie mam tyle kodu.

#include <iostream>
using namespace std;
void wartosc_elementu(int tab[][], int n,int m)
{
    for (int i=0; i<n; i++)
    {
        for(int j=0; j<m; j++)
        {
            cout << "Podaj wartosc elementu";
            cin >> tab[i][j];
        }
    }
}
int main()
{
    wartosc_elementu(tab,n,m) 
    
    return 0;
}

Prosiłbym też o pomoc jak zrobić wersje na ocenę 6:
Na 6 szukanie maxa zrobić w funkcji, do której jako argument przekazywana jest tablica.

0

Najpierw zrób na 3. Nie masz jeszcze przypisywania elementów.

0
MarekR22 napisał(a):

https://wandbox.org/permlink/HtFcht1Pu6z8eCFp
Napisane 3mc temu.

Użyj std::vector https://dsp.krzaq.cc/post/176/ucze-sie-cxx-kiedy-uzywac-new-i-delete/

   cout << result << '\n'; ``` 
Cos takiego jest do tego wyszukiwania max czy nie?
1

to jest wyświetlanie wyniku, do wyszukiwania służy ranges::max (w wersji c++2a). Do wyznaczania maksymalnej wartości z dwóch liczb służy std::max, ręczne szukanie mogłoby wyglądać tak:

int maksymalna = 0;
for (auto& element : kontener) { // dla vector<int> kontener;
    maksymalna = std::max(element, maksymalna);
}

albo:

auto iter_max = std::max_element(kontener.begin(), kontener.end()); // #include <algorithm>
cout << "max=" << *iter_max << '\n';

możesz robić na ifach ale to dodatkowe linie kodu, a funkcja max jest oczywista. To był przykład dla tablicy 1D, dla 2D dojdzie ekstra pętla for. Wyznaczanie max możesz od razu robić przy wprowadzaniu poszczególnych elementów tablicy, ale pod warunkiem że nie robisz później żadnych modyfikacji danych. Najbezpieczniej będzie zrobić osobną funkcję do wyznaczania max dla tablicy 2D.

1 użytkowników online, w tym zalogowanych: 0, gości: 1