#include "stdafx.h" #include "iostream" #include "vector" #include #include using namespace std; int suma(vectorliczby) { int wynik = 0; for (int i = 0; i < liczby.size(); i++) { wynik += liczby[i]; } return wynik; } float srednia(vectorliczby) { float wynik = suma(liczby); return wynik / liczby.size(); } void wyswietl(vectorliczby, char separator = '\t') { for (int i = 0; i < liczby.size(); i++) { cout << liczby[i] << separator; } cout << endl; } int max(vectorliczby) { int wynik = liczby[0]; for (int i = 0; i < liczby.size(); i++) { if (wynik < liczby[i]) { wynik = liczby[i]; } } return wynik; } int min(vectorliczby) { int wynik = liczby[0]; for (int i = 0; i < liczby.size(); i++) { if (wynik > liczby[i]) { wynik = liczby[i]; } } return wynik; } int nalezy(vectorliczby, int x) { for (int i = 0; i < liczby.size(); i++) { if (x == liczby[i]) { return true; } } return false; } int zawiera(vectorliczby, vectornumery) { for (int i = 0; i < numery.size(); i++) { if (!nalezy(liczby, numery[i])) { return false; } } return true; } vectorunikalnosc(vectorliczby) { vectorwynik; for (int i = 0; i < liczby.size(); i++) { if (!nalezy(wynik, liczby[i])) { wynik.push_back(liczby[i]); } } return wynik; } bool CzyNalezy(mapmapa, int x) { for each(auto element in mapa) { if (element.first == x) { return true; } } return false; } bool CzyNalezyIndeks(mapmapa, int wartosc) { for each(auto element in mapa) { if (element.first == wartosc) { return true; } } return false; } mapczestotliwosc(vectorliczby) { mapwynik; for (int i = 0; i < liczby.size(); i++) { if (!CzyNalezyIndeks(wynik, liczby[i])) { wynik.insert(pair(liczby[i], 1)); } else { wynik[liczby[i]]++; } } return wynik; } void wyswietl(mapmapa) { for each (auto item in mapa) { cout << item.first << "=>" << item.second << " "; } cout << endl; } vectorgeneruj(int ile, unsigned zakres = 1000) { vectorwynik; for (int i = 0; i < ile; i++) { int liczba = rand() % zakres; wynik.push_back(liczba); } return wynik; } vector>generuj(int wiersze, int kolumny, unsigned zakres = 1000) { vector>wynik; for (int i = 0; i < wiersze; i++) { vectorelement = generuj(kolumny, zakres); wynik.push_back(element); } return wynik; } void wyswietl(vector>tab) { for (int i = 0; i < tab.size(); i++) { wyswietl(tab[i]); } cout << endl; } vectorkolumna(vector>tab, int nrkolumny) { vectorwynik; for (int i = 0; i < tab.size(); i++) { int liczby = tab[i][nrkolumny]; wynik.push_back(liczby); } return wynik; } vectorzamiana(vector>tab, int ile) { vectorwynik; for (int i = 0; i < tab.size(); i++) { for (int j = 0; j < ile; j++) { int liczby = tab[i][j]; wynik.push_back(liczby); } } return wynik; } vectorIndeksy(vector>tab, int minimum, int ile) { vectorwynik; for (int i = 0; i < tab.size(); i++) { for (int j = 0; j < ile; j++) { int liczby = tab[i][j]; if (liczby == minimum) { wynik.push_back(i); wynik.push_back(j); } } } return wynik; } void wyswietl(vectorliczby, int z) { int x = 0; for (int i = 0; i < liczby.size(); i++) { cout << liczby[i]; x++; if (x % 2 == 0) { cout << "-"; } } cout << endl; } int _tmain(int argc, _TCHAR* argv[]) { int arr[] = { 8, 3, 3, 4, 4, 6, 4, 8, 3 }; int arr_l = end(arr) - begin(arr); vectorliczby(arr, arr + arr_l); vectornumery; numery.push_back(5); numery.push_back(1); numery.push_back(3); wyswietl(liczby); cout << suma(liczby) << endl; cout << srednia(liczby) << endl; cout << max(liczby) << endl; cout << min(liczby) << endl; cout << nalezy(liczby, 11) << endl; //-----------------------------------zawiera if (zawiera(liczby, numery) == 1){ cout << "podzbior zawiera sie w zbiorze" << endl; } else{ cout << "podzbior nie zawiera sie w zbiorze" << endl; } //-----------------------------------unikalnosc wyswietl(liczby); vectorwynik = unikalnosc(liczby); wyswietl(wynik); //----------------------------------- mapmapa; mapa.insert(pair(1, 3)); mapa.insert(pair(3, 6)); mapa.insert(pair(6, 9)); int te = CzyNalezy(mapa, 3); cout << te << endl; cout << "ilosc elementow w mapie: " << mapa.size() << endl; cout << "pierwszy element w mapie: " << mapa[1] << endl; wyswietl(czestotliwosc(liczby)); vector>tab; wyswietl(generuj(5)); vector> m = generuj(5, 4); wyswietl(m); vector kol = kolumna(m, 3); wyswietl(kol, '\n'); vector>u = generuj(5, 4); wyswietl(u); vectork = kolumna(u, 2); wyswietl(k, '\n'); mapplcie = czestotliwosc(kol); wyswietl(plcie); wyswietl(generuj(5, 5, 3)); int wiersze = 3; int kolumny = 4; int zakres = 10; vector>www = generuj(kolumny, wiersze, zakres); wyswietl(www); vectortesto = zamiana(www, wiersze); cout << "wartosc najmniejsza : " << min(testo) << endl; vectorraczan = Indeksy(www, min(testo), wiersze); cout << "Ilosc minimalnych Indeksow : " << raczan.size() / 2 << endl; cout << "indeksy pod ktorymi jest dana wartosc : "; wyswietl(raczan, 1); cout << kolumna << endl; system("pause"); return 0; } // i wiersz , j kolumna // tab // vector> // tab[i] // vector // tab[i][j] // int // w domu // Wyszukaj minimum w 2D macierzy // WskaĹź indeksy dla ktorych ta wartoĹ?Ä? stoi // nauka własna śr 19:30-21:00, nd 17:00-18:30 // ogarnij wskazniki