// Zadatak10.cpp : This file contains the 'main' function. Program execution begins and ends there.
//

#include <iostream>
#include<ctime>
using namespace std;
int main()
{
    srand(time(0));

    int bubanj[45];
    int odigraniBrojevi[7];
    int broj;
    int temp;

    cout << "LOTO 7/45" << endl << endl;

    //Odigraj brojeve
    for (int i = 0; i < 7; i++)
    {
        //Osiguraj da korisnik unese brojeve iz raspona 1 - 45
        bool brojVecOdigran;
        do
        {
            cout << "Odigrajte " << i + 1 << ". broj: ";
            cin >> broj;

            //Osigurjate da 2x ne odigra isti broj
            for (int j = 0; j < 7; j++)
            {
                brojVecOdigran = false;
                if (odigraniBrojevi[j] == broj)
                {
                    brojVecOdigran = true;
                    break;
                }
            }
        } while (broj < 1 || broj>45 || brojVecOdigran);
        odigraniBrojevi[i] = broj;
    }

    //sortiraj odigrane brojeve
    for (int i = 0; i < 7; i++)
    {
        for (int j = 0; j < (7 - 1); j++)
        {
            if (odigraniBrojevi[j] > odigraniBrojevi[j + 1])
            {
                temp = odigraniBrojevi[j + 1];
                odigraniBrojevi[j + 1] = odigraniBrojevi[j];
                odigraniBrojevi[j] = temp;
            }
        }
    }

    //ubaci brojeve u bubanj
    for (int i = 0; i < 45; i++)
        bubanj[i] = i + 1;

    //izvuci 7 brojeva
    int izvuceniBrojevi[7];
    for (int i = 0; i < 7; i++)
    {
        bool brojJeVecOdabran;
        int slucajniBroj;

        //osiguranje da se ne izvuče 2x isti broj
        do 
        {
            brojJeVecOdabran = false;
            slucajniBroj = rand() % 46;
            for (int i = 0; i < 7;i++)
            if (izvuceniBrojevi[i] == slucajniBroj)
            {
                brojJeVecOdabran = true;
                break;
            }
        } while (brojJeVecOdabran);
        izvuceniBrojevi[i] = slucajniBroj;
    }

    //sortiranje izvučenih brojeva
    for (int i = 0; i < 7; i++)
    {
        for (int j=0;j<(7-1);j++)
            if (izvuceniBrojevi[j] > izvuceniBrojevi[j + 1])
            {
                temp = izvuceniBrojevi[j + 1];
                izvuceniBrojevi[j + 1] = izvuceniBrojevi[j];
                izvuceniBrojevi[j] = temp;
            }
    }

    //prikaz izvucenih brojeva
    cout << endl;
    cout << "IZVUCENI BROJEVI";
    for (int i = 0; i < 7; i++)
        cout << izvuceniBrojevi[i] << "\t";

    //prikaz odigranih brojeva
    cout << endl;
    cout << "ODIGRANI BROJEVI";
    for (int i = 0; i < 7; i++)
        cout << odigraniBrojevi[i] << "\t";

    cout << endl;
    //prikaz dobitne kombinacije
    cout << "DOBITNI BROJEVI";
    int brojPogodaka = 0;
    for (int i = 0; i < 7; i++)
    {
        //izvučeni broj uspoređujemo s odigranim brojem
        for (int j = 0; j < 7; j++)
        {
            if (izvuceniBrojevi[i] == odigraniBrojevi[j])
            {
                brojPogodaka++;
                cout << izvuceniBrojevi[i] << "\t";
            }
        }
    }

    cout << endl;
    cout << "Broj pogodaka:" << brojPogodaka;

}

// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
// Debug program: F5 or Debug > Start Debugging menu

// Tips for Getting Started: 
//   1. Use the Solution Explorer window to add/manage files
//   2. Use the Team Explorer window to connect to source control
//   3. Use the Output window to see build output and other messages
//   4. Use the Error List window to view errors
//   5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project
//   6. In the future, to open this project again, go to File > Open > Project and select the .sln file
