Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- using namespace std;
- /*
- A9. Napisać funkcję
- int drugi(int* t, int rozmiar)
- która zwraca drugi największy element w tablicy
- t
- o rozmiarze
- rozmiar
- . W
- przypadku, gdy są dwa równe największe elementy należy zwrócić jeden z nich.
- Można założyć, że
- rozmiar
- >1.
- */
- void wypelnij_liczbami(int* tablica, int rozmiar)
- {
- srand(static_cast<unsigned>(time(nullptr)));
- for(int i = 0; i < rozmiar; ++i)
- {
- tablica[i] = rand() % 101;
- }
- }
- void wypisz_tablice(int* tablica, int rozmiar)
- {
- for(int i = 0; i < rozmiar; ++i)
- cout << tablica[i] << " ";
- cout << endl;
- }
- int drugi(int* t, int rozmiar)
- {
- int liczba_max = t[0];
- int liczba_2 = t[1];
- if(liczba_2 > liczba_max)
- swap(t[0], t[1]);
- for(int i = 2; i < rozmiar; ++i)
- {
- if(t[i]>=liczba_max)
- {
- liczba_2 = liczba_max;
- liczba_max = t[i];
- }
- else if(t[i] > liczba_2)
- liczba_2 = t[i];
- }
- return liczba_2;
- }
- int main()
- {
- int tablica[20];
- wypelnij_liczbami(tablica, 20);
- wypisz_tablice(tablica, 20);
- cout << drugi(tablica, 20);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment