123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 | #include <iostream>
#include <vector>
#include <random>
using namespace std;
struct wdp {
vector<int>liczby;
vector<int>wystapienia;
};
int index(vector<int>tab, int el)
{
for (int i = 0; i < tab.size(); i++)
{
if (tab[i] == el)
{
return i;
}
}
return -1;
}
wdp czestosc(vector<int>tab)
{
wdp wynik;
for (int i = 0; i < tab.size(); i++)
{
int pozycja = index(wynik.liczby, tab[i]);
if (pozycja == -1)
{
wynik.liczby.push_back(tab[i]);
wynik.wystapienia.push_back(1);
}
else
wynik.wystapienia[pozycja]++;
}
return wynik;
}
int suma(vector<int>tab)
{
int wynik = 0;
for (int i = 0; i < tab.size(); i++)
{
wynik += tab[i];
}
return wynik;
}
void wypisz(vector<int>tab)
{
for (int i = 0; i < tab.size(); i++)
{
cout << tab[i] << " ";
}
}
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;
}
int potega(double a, int b)
{
int wynik = 1;
while (b > 0)
{
wynik *= a;
b--;
}
return wynik;
}
vector<int>generuj(int wielkosc, int min, int max)
{
vector<int>tab(wielkosc);
for (int i = 0; i < tab.size(); i++)
{
tab[i] = rand() % (max - min) + min;
}
return tab;
}
bool czynalezy(vector<int>tab, int el)
{
for (int i = 0; i < tab.size(); i++)
{
if (tab[i] == el)
{
return true;
}
}
return false;
}
bool czyzawiera(vector<int>tab1, vector<int>tab2)
{
for (int i = 0; i < tab2.size(); i++)
{
if (!czynalezy(tab1, tab2[i]))return true;
}
return false;
}
vector<int>unikalny(vector<int>tab)
{
vector<int>wynik;
for (int i = 0; i < tab.size(); i++)
{
if (!czynalezy(tab, tab[i]))
{
wynik.push_back(tab[i]);
}
}
return wynik;
}
int min(vector<int>tab)
{
int wynik = 0;
for (int i = 0; i < tab.size(); i++)
{
if (tab[i] > wynik)
{
wynik = tab[i];
}
}
return wynik;
}
int main()
{
vector<int>tab = { 1,2,3,4,3,3,2,2,3,5 };
vector<int>liczby = { 1,2,2,3,5,5,5,5,6,34,5,3,2,3,5,6,7};
struct wdp(czestosc(liczby));
for (int i = 0; i < liczby.size(); i++)
{
cout << liczby[i] << endl;
}
}
|