#include <iostream>
#include <cstdlib>
#include <ctime>
#include <fstream>

using namespace std;

#define ellenoriz(x) if (x) feladat++; else cout << "a feltetel nem teljesult a " << __LINE__ << ". sorban" << endl

/** Szabályok:
    - kódolni az ///Innetol ///Idáig részen lehet
    - csak az a beugró érvényes, amely nem tartalmaz semmilyen kód változtatást a main()-ben és csökkent függvényben
      valamint már nincs benne kikommentezve semmi
    - az eredeti main() egészében nem kikommentezhetõ!
    - az "ellenoriz"-en kívül nem tartalmaz #define sorokat, és azt sem szabad megváltoztatni
    - új #include hozzáadása megengedett a C/C++ standard könyvtárbeli elemek közül
*/


/// Innentol


/// Idaig



int csokkent(int& mit_csokkent) {
    int randomszam = rand() % 3 + 1;
    mit_csokkent -= randomszam;
    return randomszam;
}

int main()
{
    int feladat = 0;
    srand(time(0));
/*
    Hotel h1 = uj_hotel("Musica Hotel", 5, 200);
    ellenoriz(h1.nev == "Musica Hotel" && h1.szobak_szama == 5 && h1.szoba_ar_egy_ejszakara == 200);

    szoba_foglalas(h1, "Jacob van Eyck", 2);
    szoba_foglalas(h1, "Antonio Vivaldi", 1);
    szoba_foglalas(h1, "Philip Emmanuel Bach", 1);
    szoba_foglalas(h1, "Frederic Chopin", 2);
    szoba_foglalas(h1, "Richard Wagner", 3);
    szoba_foglalas(h1, "Mr. Bean", 2);              // Elfogytak a szobák, ezt a foglalást nem lehet teljesíteni...
    ellenoriz(h1.foglalasok[0].nev == "Jacob van Eyck" && h1.foglalasok[4].ejszakak_szama == 3 && h1.foglalasok.size() == 5);

    Hotel h2 = uj_hotel("Science Hotel", 10, 100);
    int randomszam = 24 + rand() % 7;
    int randomszam2 = randomszam * 100;
    szoba_foglalas(h2, "Thales", csokkent(randomszam));
    szoba_foglalas(h2, "Euclides", csokkent(randomszam));
    szoba_foglalas(h2, "Galileo Galilei", csokkent(randomszam));
    szoba_foglalas(h2, "Leonardo da Vinci", csokkent(randomszam));
    szoba_foglalas(h2, "Isaac Newton", csokkent(randomszam));
    szoba_foglalas(h2, "Charles Darwin", csokkent(randomszam));
    szoba_foglalas(h2, "Louis Pasteur", csokkent(randomszam));
    szoba_foglalas(h2, "Szent-Gyorgyi Albert", randomszam);
    ellenoriz(bevetel(h1) == 1800 && bevetel(h2) == randomszam2);

    randomszam = rand() % 10;
    randomszam2 = rand() % 50 + 50;
    ofstream f("Musica Hotel.txt");
    f << "2017.10.12-Uj nev:Musica Hotel and Wellness" << endl
      << "2017.08.23-Uj szobak:" << randomszam << endl                // Épület bővítés
      << "2017.08.23-Szobak uj ara:" << randomszam2 + 200 << endl
      << "2017.06.01-Uj szobak:" << randomszam << endl;
    f.close();
    f.open("Science Hotel.txt");
    f << "2018.01.12-Uj szobak:" << randomszam2 / 10 << endl
      << "2018.01.01-Szobak uj ara:" << randomszam * 10 + 100 << endl;
    f.close();
    valtozasok_beolvasasa(h1);                      // A hotel nevének megfelelő fájlból
    valtozasok_beolvasasa(h2);
    ellenoriz(h1.nev == "Musica Hotel and Wellness" && h1.szobak_szama == 5+randomszam*2 && h1.szoba_ar_egy_ejszakara == randomszam2+200);
    ellenoriz(h2.szobak_szama == 10+randomszam2/10 && h2.szoba_ar_egy_ejszakara == randomszam*10+100);
*/

    cout << "\n" << feladat << "/5 feladat" <<endl;
    if( feladat == 5 ) cout << "Hivj egy felugyelot, hogy lepontozzon!" <<endl;
    return 0;

}
