Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "pch.h"
- #include <iostream>
- #include <vector>
- #include <time.h>
- using namespace std;
- void wypisz(vector <int> tab)
- {
- for (int i = 0; i < tab.size(); i++)
- {
- cout << tab[i] << " ";
- }
- }
- int max(vector <int> tab)
- {
- int max = tab[0];
- for (int i = 1; i < tab.size(); i++)
- {
- if (max < tab[i])
- {
- max = tab[i];
- }
- }
- return max;
- }
- int suma(vector <int> tab)
- {
- int suma = 0;
- for (int i = 0; i < tab.size(); i++)
- {
- suma = suma + tab[i];
- }
- return suma;
- }
- bool CzyNalezy(vector <int> tab, int a)
- {
- for (int i = 0; i < tab.size(); i++)
- {
- if (a == tab[i])
- {
- return true;
- }
- }
- return false;
- }
- bool CzyZawiera(vector <int> tab, vector <int> tab2)
- {
- for (int i = 0; i < tab.size(); i++)
- {
- if (!CzyNalezy(tab, tab2[i]))
- {
- return false;
- }
- }
- return true;
- }
- vector <int> Unikalnosc(vector <int> tab)
- {
- vector <int> wynik;
- for (int i = 0; i < tab.size(); i++)
- {
- if (!CzyNalezy(wynik, tab[i]))
- {
- wynik.push_back(tab[i]);
- }
- }
- return wynik;
- }
- int index(vector <int> tab, int a)
- {
- for (int i = 0; i < tab.size(); i++)
- {
- if (a == tab[i])
- {
- return i;
- }
- }
- return -1;
- }
- vector <int> Wybierz(vector<int> tab, int dzielnik, int reszta = 0)
- {
- vector <int> dzielenie;
- for (int i = 0; i < tab.size(); i++)
- {
- if (tab[i] % dzielnik == reszta)
- {
- dzielenie.push_back(tab[i]);
- }
- }
- return dzielenie;
- }
- struct wdp
- {
- vector<int> liczby;
- vector<int> wystepowanie;
- };
- wdp czestosc(vector<int> tab)
- {
- wdp wynik;
- for (int i = 0; i < tab.size(); i++)
- {
- int ind = index(wynik.liczby, tab[i]);
- if (ind == -1)
- {
- wynik.liczby.push_back(tab[i]);
- wynik.wystepowanie.push_back(1);
- }
- else
- {
- wynik.wystepowanie[ind]++;
- }
- }
- return wynik;
- }
- void wypisz(wdp zm)
- {
- wypisz(zm.liczby);
- cout << endl;
- wypisz(zm.wystepowanie);
- }
- vector <int> wybierz(vector <int> tab, int dzielnik, int reszta = 0)
- {
- vector<int> wynik;
- for (int i = 0; i < tab.size(); i++)
- {
- if (tab[i] % dzielnik == reszta)
- {
- wynik.push_back(tab[i]);
- }
- }
- return wynik;
- }
- vector <int> generuj(int n, int min, int max)
- {
- vector <int> wygenerowane;
- for (int i = 0; i < n; i++)
- {
- int a = (rand() % (max - min + 1)) + min;
- wygenerowane.push_back(a);
- }
- return wygenerowane;
- }
- vector <int> generuj(int n, int max = 50)
- {
- return generuj(n, 0, max);
- }
- int SumaOd(vector <int> tab, int a)
- {
- int suma = 0;
- for (int i = 0; i < tab.size(); i++)
- {
- suma += abs(tab[i] - a);
- }
- return suma;
- }
- int SumaOdMin(vector<int> tab)
- {
- int wynik = tab[0];
- int min=(SumaOd(tab,tab[0]));
- for (int i = 1; i < tab.size(); i++)
- {
- if (SumaOd(tab,tab[i] > min ))
- min= SumaOd(tab,tab[i]);
- wynik = (tab[i]);
- }
- return wynik;
- }
- int main()
- {
- srand(time(NULL));
- int b = 1;
- for (int i = 1; i <= 4; i++)
- {
- while (b <= i)
- {
- cout << "*";
- b++;
- }
- cout << endl;
- b = 1;
- }
- int w = 4;
- for (int i = 0; i < w; ++i)
- {
- for (int j = 0; j < w - i; ++j)
- {
- cout << " ";
- }
- for (int k = 0; k <= i * 2; ++k)
- {
- cout << "*";
- }
- cout << endl;
- }
- vector <int> tabela2 = { 8,3,1,5,4 };
- vector <int> tabela = { 8,3,8,1,1,2,5,8,5 };
- wypisz(tabela);
- cout << endl;
- cout << max(tabela) << endl;
- cout << suma(tabela2) << endl;
- if (CzyNalezy(tabela, 1))
- {
- cout << "tak" << endl;
- }
- else cout << "nie" << endl;
- if (CzyZawiera(tabela2, tabela))
- {
- cout << "tak" << endl;
- }
- else cout << "nie" << endl;
- cout << index(tabela, 8) << endl;
- vector <int> unik = Unikalnosc(tabela);
- wypisz(unik);
- cout << endl;
- vector <int> podzielenie = wybierz(tabela, 8);
- wypisz(podzielenie);
- cout << endl;
- wdp zm = czestosc(tabela);
- wypisz(zm);
- cout << endl;
- vector <int> losowe = generuj(10, 20, 30);
- wypisz(losowe);
- cout << endl;
- cout << SumaOdMin(tabela2);
- cout << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement