Facebook
From testoviron, 6 Years ago, written in Plain Text.
This paste is a reply to T100 from testoviron - go back
Embed
Viewing differences between T100 and T800
#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 wskaznikiwskazniki
// praca domowa rodzina vito corleone
// metoda licząca sumaryczną odległość ( numery domów które mamy vector intów i pozycja naszego domu )
// 2 do w którym jestem 7 do do którego chce spr. 2-7=-5 odległośc i potem absolute
// dla każdego domu policzyć jej wynik zapisać w mapie
// znaleźć minimum z mapy
// pair min(mapamapa)
// jak wybrać pierwszy element mapy np 1,2