﻿#include <iostream>
#include <cstdlib>
#include <fstream>

using namespace std;
int lottosz[260];

bool szamkeresese(int szam){
int i=0;
bool van= false;
while(!van && i<260) {

        if(lottosz[i]==szam) van=true;

    i++;
    }
return van;
}

void feladat(char feladat){

    cout << feladat << ". feladat" << endl;

}

int main()
{
///1. feladat: 52. hét számainak bekérése
    int lottoszamok[5];
    setlocale(LC_ALL, "hun");
    feladat('1');
    cout << "Adja meg az 52. hét számait: " << endl;
    for(int i=0; i<5; i++) {

        cin >> lottoszamok[i];

    }
cin.get();
///2. feladat: 52. hét számainak sorbarendezése
    for(int i=0; i<4; i++) {

        for(int j=i+1; j<5; j++) {

            if(lottoszamok[i]>lottoszamok[j]) {

            int csere = lottoszamok[i];
            lottoszamok[i] = lottoszamok[j];
            lottoszamok[j] = csere;
            }

        }

    }
    feladat('2');
    cout << "Az 52. hét számai emelkedõ sorrendben: ";
    for(int i=0; i<5; i++) {

        cout << lottoszamok[i] << " ";

    }
    cout << endl;
    cin.get();
///3-4. feladat: Tetszõleges hét számai.

   int het;
   feladat('3');
   cout << "Adjon meg egy hetet (1-51): ";
   cin >> het;

   ifstream be;
   be.open("lottosz.dat");
   if(be.fail()) {

    cout << "A fájl nem nyitható meg.";
    cin.get();
    exit(-1);

   }
    for(int i=0; i<255; i++) {

            be >> lottosz[i];

    }
    be.close();
    feladat('4');
    for(int j=(het-1)*5; j<het*5; j++) {

            cout << lottosz[j] << " ";

    }
    cout << endl;
    cin.get();
///5 feladat: Van-e olyan szám, amit még nem húztak ki.

    feladat('5');
    int k=1;
    while(szamkeresese(k) && k<91) {

        k++;
    }
    if(k<91) cout << "Van olyan szám, amit még nem húztak ki!" << endl;
    cin.get();
///6. feladat: Páratlan számok számai
    int paratlan=0;
    for(int i=0; i<255; i++) {

            if(lottosz[i]%2==1) paratlan++;

    }
    feladat('6');
    cout << "Páratlan számok száma: " << paratlan << endl;
    cin.get();
///7. feladat: lotto52ki.dat  állomány létrehozása
    for(int j=0; j<5; j++) {

    lottosz[255+j]=lottoszamok[j];

    }

    ofstream ki;
    ki.open("lotto52ki.dat");

    if(ki.fail()) {
    cout << "A fájl nem nyitható meg.";
    cin.get();
    exit(-1);
    }

    for(int i=0; i<260; i++) {

        if(i%5!=0) ki << " ";

        if(i%5==0 && i>0) ki << endl;
        ki << lottosz[i];

    }
    ki.close();
    cin.get();
///8. feladat: lottószámok gyakorisága
    feladat('8');
    int gyakorisag[90];
    cout << "2003-ban kíhúzott számok gyakorisága:" << endl;
    ifstream f;
    f.open("lotto52ki.dat");

    if(f.fail()) {
        cout << "A fájl megnyitása nem sikerült";
        cin.get();
        exit(-1);
    }
    int szam;
    for(int i=0; i<90; i++) {

        gyakorisag[i]=0;
        while(f >> szam) {

            if(szam==i+1) gyakorisag[i]++;

        }
        f.clear();
        f.seekg(0,f.beg);              ///a fájl elejére kell állni
        if(i%15==0 && i>0) cout << endl;
        cout << gyakorisag[i] << " ";

    }
    cout << endl;
    f.close();
    cin.get();
///9. feladat: Mely prímszámokat nem húzták még ki.
    feladat('9');
    cout << "90 alatti prímszámok, amelyeket 2003. évben nem húztak ki: " ;
    int primek[]={2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89};

    for(unsigned int i=0; i<sizeof(primek)/sizeof(int); i++) {

        if(!szamkeresese(primek[i])) cout << primek[i] << " ";

    }
    cin.get();
    return 0;

    }
