Jak znaleźć min i max w tablicy dwuwymiarowej ?

0

Witam, właśnie zacząłem przygodę z C++ i natrafiłem na problem a mianowicie dostałem zadanie:

Znajdź minimum i maksimum w tablicy dwuwymiarowej liczb typu float.
Należy w pierwszej kolejności utworzyć tablicę dwuwymiarową (wystarczy 5x5 elementów).
Następnie wypełnić ją losowymi wartościami w tym celu należy wykorzystać funkcję rand (dla zakresu 0-99 należy wykorzystać rand() % 100). Należy pamiętać o dodaniu odpowiednich bibliotek (#include) i inicjalizacji generatora liczb losowych za pomocą srand (najlepiej z wykorzystaniem funkcji czasu).

Wszystko działa dobrze tylko mam problem aby w tej tablicy dwuwymiarowej znaleźć min i max.

#include <iostream>
#include <cstdlib>
#include <windows.h>
#include <time.h>

using namespace std;

float tab[5][5];

int main()
{
    srand(time(NULL));
    for(int i=0;i<5;i++)
	{
		for(int j=0;j<5;j++)
		{
			tab[i][j]=rand()%100;
			cout<<tab[i][j]<<" ";
		}
		cout<<endl;
	}

	return 0;
}

3

Jak chcesz to robić ręcznie, to utwórz sobie zmienne minmax, ustaw na pierwszy element tablicy, a potem przeleć przez całą tablicę i jak napotkasz na wartość mniejszą od min/większą od max, to ją zaktualizuj na to, co akurat zobaczyłeś.

Jak nie, to są gotowce w bibliotece standardowej: std::min std::max std::minmax

A tak poza tym, przejdź na współczesną metodę generowania liczb pseudolosowych, std::random. Pozwala łatwo ominąć wiele pułapek — np. Twoja metoda nie ma równomiernego rozkładu.

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