Advertisement
Marcel12311

Gra|Mój pierwszy projekt(nieskończony)|

Jan 14th, 2021
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 12.26 KB | None | 0 0
  1. #include <iostream>
  2. #include <time.h>
  3. #include <windows.h>
  4. #include <fstream>
  5. #include <cstdlib>
  6. #include <conio.h>
  7. using namespace std;
  8. // Zmienne
  9. const unsigned ilosc_liczb = 6;
  10. const int max_liczb = 49;
  11. //tablica uzytkownika
  12. int atablica[6];
  13. //punkty - czyli ilosc trafien
  14. int punkt = 0;
  15. // zmienne - wybor switch
  16. int wyb1;
  17. //ogolne menu banku
  18. int wyb2;
  19. int wyb3;
  20. int wyb4;
  21. //dane jak nazwa uzytkownia, haslo czy numer PINn do banku itp...
  22. string nz_uzt, password, newlogin, newpass;
  23. int PIN,iPIN,cash;
  24. void bankomat();
  25. void logowanie();
  26. void rejestracja();
  27. void konto();
  28. int main()
  29. {
  30.     // deklaracja i wyzerowanie tablicy liczb
  31.     unsigned atablicaliczb[ilosc_liczb];
  32.     for(int i = 0; i < ilosc_liczb; ++i)
  33.     {
  34.         // losowanie liczb
  35.         srand(time(NULL));
  36.         for(int i = 0; i < ilosc_liczb; )
  37.         {
  38.             // wylosowanie liczby
  39.             atablicaliczb[i] = rand() % max_liczb + 1;
  40.             // sprawdzenie, czy sie ona nie powtarza
  41.             bool bPowtarzaSie = false;
  42.             for(int j = 0; j < i; ++j)
  43.             {
  44.                 if(atablicaliczb[j] == atablicaliczb[i])
  45.                 {
  46.                     bPowtarzaSie = true;
  47.                     break;
  48.                 }
  49.             }
  50.             // jezeli sie nie powtarza, przechodzimy do nastepnej liczby
  51.             if(!bPowtarzaSie) ++i;
  52.  
  53.         }
  54.     }
  55.  
  56.     // liczby wprowadzone przez uzytkownika
  57.  
  58.  
  59.  
  60.     cout << "Prosze wprowadzic 6 liczb od 1..49 !" <<endl;
  61.     cout << "Enter: ";
  62.     cin >> atablica[0];
  63.     if(atablica[0] <= 0)
  64.     {
  65.         cout << "za mala liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  66.         exit(0);
  67.     }else if(atablica[0] >= 50){
  68.         cout << "za duzo liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  69.         exit(0);
  70.     }
  71.     cout << "Enter: ";
  72.     cin >> atablica[1] ;
  73.     if(atablica[1] <= 0 || atablica[1] == atablica[0])
  74.     {
  75.         cout << "za mala liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  76.         cout << "lub wprowadziles taka sama liczbe!" <<endl;
  77.         exit(0);
  78.     }else if(atablica[1] >= 50 || atablica[1] == atablica[0]){
  79.         cout << "za duzo liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  80.         cout << "lub wprowadziles taka sama liczbe!" <<endl;
  81.         exit(0);
  82.     }
  83.     cout << "Enter: ";
  84.     cin >> atablica[2];
  85.     if(atablica[2] <= 0 || atablica[2] == atablica[0] || atablica[2] == atablica[1])
  86.     {
  87.         cout << "za mala liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  88.         cout << "lub wprowadziles taka sama liczbe!" <<endl;
  89.         exit(0);
  90.     }else if(atablica[2] >= 50 || atablica[2] == atablica[0] || atablica[2] == atablica[1]){
  91.         cout << "za duzo liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  92.         cout << "lub wprowadziles taka sama liczbe!" <<endl;
  93.         exit(0);
  94.     }
  95.     cout << "Enter: ";
  96.     cin >> atablica[3];
  97.     if(atablica[3] <= 0 || atablica[3] == atablica[0] || atablica[3] == atablica[1] || atablica[3] == atablica[2])
  98.     {
  99.         cout << "za mala liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  100.         cout << "lub wprowadziles taka sama liczbe!" <<endl;
  101.         exit(0);
  102.     }else if(atablica[3] >= 50 || atablica[3] == atablica[0] || atablica[3] == atablica[1] || atablica[3] == atablica[2]){
  103.         cout << "za duzo liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  104.         cout << "lub wprowadziles taka sama liczbe!" <<endl;
  105.         exit(0);
  106.     }
  107.     cout << "Enter: ";
  108.     cin >> atablica[4];
  109.     if(atablica[4] <= 0 || atablica[4] == atablica[0] || atablica[4] == atablica[1] || atablica[4] == atablica[2] || atablica[4] == atablica[3])
  110.     {
  111.         cout << "za mala liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  112.         cout << "lub wprowadziles taka sama liczbe!" <<endl;
  113.         exit(0);
  114.     }else if(atablica[4] >= 50 || atablica[4] == atablica[0] || atablica[4] == atablica[1] || atablica[4] == atablica[2] || atablica[4] == atablica[3]){
  115.         cout << "za duzo liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  116.         cout << "lub wprowadziles taka sama liczbe!" <<endl;
  117.         exit(0);
  118.     }
  119.     cout << "Enter: ";
  120.     cin >> atablica[5];
  121.     if(atablica[5] <= 0 || atablica[5] == atablica[0] || atablica[5] == atablica[1] || atablica[5] == atablica[2] || atablica[5] == atablica[3] || atablica[5] == atablica[4])
  122.     {
  123.         cout << "za mala liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  124.         cout << "lub wprowadziles taka sama liczbe!" <<endl;
  125.         exit(0);
  126.     }else if(atablica[5] >= 50 || atablica[5] == atablica[0] || atablica[5] == atablica[1] || atablica[5] == atablica[2] || atablica[5] == atablica[3] || atablica[5] == atablica[4]){
  127.         cout << "za duzo liczbe wprowadziles! mialo byc od 1 do 49!" <<endl;
  128.         cout << "lub wprowadziles taka sama liczbe!" <<endl;
  129.         exit(0);
  130.     }
  131.  
  132.     // wyswietlamy wylosowane liczby
  133.     cout << "Twoje liczby: " <<endl;
  134.     for(int i = 0; i < 6; ++i)
  135.     {
  136.         cout << atablica[i] << " ";
  137.     }
  138.  
  139.     cout << endl<< "Wyniki lotta: " <<endl;
  140.     for(int i = 0; i < ilosc_liczb; ++i)
  141.     {
  142.         cout << atablicaliczb[i] << " ";
  143.  
  144.         if(atablica[1]==1)
  145.         {
  146.             ++punkt;
  147.         }
  148.         if(atablica[1]==atablicaliczb[i])
  149.         {
  150.             ++punkt;
  151.         }
  152.         if(atablica[2]==atablicaliczb[i])
  153.         {
  154.             ++punkt;
  155.         }
  156.         if(atablica[3]==atablicaliczb[i])
  157.         {
  158.             ++punkt;
  159.         }
  160.         if(atablica[4]==atablicaliczb[i])
  161.         {
  162.             ++punkt;
  163.         }
  164.         if(atablica[5]==atablicaliczb[i])
  165.         {
  166.             ++punkt;
  167.         }
  168.     }
  169.     cout << endl<< "-----------------------" <<endl;
  170.     cout << "3 trafien = (10zl)" <<endl;
  171.     cout << "4 trafien = (100zl)" <<endl;
  172.     cout << "5 trafien = (3500zl)" <<endl;
  173.     cout << "6 trafien = (1000000zl)" <<endl;
  174.     cout << "-----------------------" <<endl;
  175.     cout << "Masz " << punkt << " trafien!"<<endl;
  176.     cout << "Na gorze mozesz sprawdzic trafienia."<<endl;
  177.     cout << "Co chcesz Teraz Zrobic?" <<endl;
  178.     cout << "Wypisz (1) i potwierdz enterem - jesli chcesz zagrac od nowa." <<endl;
  179.     cout << "Wypisz (2) i potwierdz enterem - jesli chcesz wyplacic gotowke." <<endl;
  180.     cout << "Enter: ";
  181.     cin >> wyb1;
  182.     switch(wyb1)
  183.         {
  184.             case 1:
  185.                 punkt = 0;
  186.                 system("cls");
  187.                 break;
  188.             case 2:
  189.                 bankomat();
  190.                 break;
  191.             default:
  192.                 cout << "Nieznana opcja!" <<endl;
  193.                 exit(0);
  194.         }
  195.      //<- } tutaj wstawic koniec petli while
  196. }
  197. void bankomat()
  198. {
  199.     system("cls");
  200.     cout << "Witamy w bankomacie czy masz konto?"<<endl;
  201.     cout << "Prosze sie zalogowac lub zarejestrowac jesli"<<endl;
  202.     cout << "Panstwo nie posiada u nas konta" <<endl;
  203.     cout << "wybierz (1) - aby zalogowac sie" <<endl;
  204.     cout << "wybierz (2) - aby zarejestrowac sie" <<endl;
  205.     cout << "wybierz (3) - aby wyjsc" <<endl;
  206.     cout << "Enter: ";
  207.     cin >> wyb2;
  208.     switch(wyb2)
  209.     {
  210.     case 1:
  211.         logowanie();
  212.         break;
  213.     case 2:
  214.         rejestracja();
  215.         break;
  216.     case 3:
  217.         exit(0);
  218.     default:
  219.         cout << "nieznana opcja!";
  220.         exit(0);
  221.     }
  222.  
  223. }
  224. void logowanie()
  225. {
  226.     system("cls");
  227.     cout << "Logowanie:"<<endl;
  228.     fstream pliks;
  229.     pliks.open("dane.txt",ios::in);
  230.     if(pliks.good()==false)
  231.     {
  232.         cout << "Plik nie istnieje z danymi!"<<endl;
  233.         cout << "Musisz najpierw zarejestrowac sie!";
  234.         exit(0);
  235.     }
  236.     string linia;
  237.     int nr_lini = 1;
  238.     while(getline(pliks,linia))
  239.     {
  240.         switch(nr_lini)
  241.         {
  242.             case 1: nz_uzt = linia; break;
  243.             case 2: password = linia; break;
  244.             case 3: PIN=atoi(linia.c_str()); break;
  245.             case 4: cash=atoi(linia.c_str()); break;
  246.         }
  247.  
  248.         nr_lini++;
  249.     }
  250.  
  251.     pliks.close();
  252.  
  253.     cout << nz_uzt <<endl;
  254.     cout << password <<endl;
  255.     cout << PIN <<endl;
  256.     cout << cash <<endl;
  257.  
  258.     cout << "Podaj login: ";
  259.     cin >> newlogin;
  260.     cout << "Podaj Haslo: ";
  261.     cin >> newpass;
  262.     cout << "Podaj PIN: ";
  263.     cin >> iPIN;
  264.     if(newlogin == nz_uzt && newpass == password && iPIN == PIN)
  265.     {
  266.         cout << "Prawidlowe dane!" <<endl;
  267.         cout << "czekaj 5 sekund trwa wczytywanie konta..."<<endl;
  268.         for(int i = 4; i >=0; --i)
  269.         {
  270.             Sleep(1000);
  271.             cout << "czekaj "<<i<< " sekund trwa wczytywanie konta..."<<endl;
  272.         }
  273.         konto();
  274.     }else{
  275.         cout << "prosze wprowadzic poprawny login/haslo lub PIN!" <<endl;
  276.         Sleep(4500);
  277.         return logowanie();
  278.     }
  279. }
  280. void rejestracja()
  281. {
  282.     cout << "Rejestracja:"<<endl;
  283.     cout << "Pamietaj nazwa uzytkownika nie moze zawierac cyfr tylko litery!"<<endl;
  284.     cout << "Wprowadz nazwe uzytkownika:";
  285.     cin >> nz_uzt;
  286.     cout << "Pamietaj haslo nie moze zawierac cyfr tylko litery!"<<endl;
  287.     cout << "Wprowadz haslo: ";
  288.     cin >> password;
  289.     cout << "Wprowadz 4-cyfrowy PIN: ";
  290.     cin >> PIN;
  291.     cash = 0;
  292.     fstream plik;
  293.     plik.open("dane.txt",ios::out | ios::app);
  294.  
  295.  
  296.     plik << nz_uzt <<endl;
  297.     plik << password <<endl;
  298.     plik << PIN <<endl;
  299.     plik << cash <<endl;
  300.  
  301.     plik.close();
  302.     return bankomat();
  303. }
  304. void konto()
  305. {
  306.     system("cls");
  307.     cout << "Konto:"<<endl;
  308.     fstream plik;
  309.     plik.open("dane.txt",ios::in);
  310.     if(plik.good()==false)
  311.     {
  312.         cout << "Musisz najpierw zarejestrowac sie!";
  313.         exit(0);
  314.     }
  315.     string linia;
  316.     int nr_lini = 1;
  317.     while(getline(plik,linia))
  318.     {
  319.         switch(nr_lini)
  320.         {
  321.             case 1: nz_uzt = linia; break;
  322.             case 2: password = linia; break;
  323.             case 3: PIN=atoi(linia.c_str()); break;
  324.             case 4: cash=atoi(linia.c_str()); break;
  325.         }
  326.  
  327.         nr_lini++;
  328.     }
  329.  
  330.     cout << nz_uzt <<endl;
  331.     cout << password <<endl;
  332.     cout << PIN <<endl;
  333.     cout << cash <<endl;
  334.  
  335.     cash = cash + 1;
  336.     plik << cash <<endl;
  337.     plik.close();
  338.     cout << "aktualnie masz " << cash << " pieniedzy!" <<endl;
  339.     cout << "Co chcesz zrobic?" <<endl;
  340.     cout << "1.Wplacic do konta wypisz (1)" <<endl;
  341.     cout << "2.Przejsc dalej w swiat(2)" <<endl;
  342.     cout << "3.Wyjsc calkowicie(3)" <<endl;
  343.     cout << "Enter: ";
  344.     cin >> wyb3;
  345.     switch(wyb3)
  346.     {
  347.     case 1:
  348.         cout << "Prosze sprawdzic ile trafien zdobyles z ostatniej gry: "<<endl;
  349.         cout << "aktulanie masz " << punkt << " trafien!" <<endl;
  350.         cout << "tu masz tabele za co mozesz wymienic:" <<endl;
  351.         cout << "-----------------------" <<endl;
  352.         cout << "3 trafien = (10zl)" <<endl;
  353.         cout << "4 trafien = (100zl)" <<endl;
  354.         cout << "5 trafien = (3500zl)" <<endl;
  355.         cout << "6 trafien = (1000000zl)" <<endl;
  356.         cout << "-----------------------" <<endl;
  357.         cout << "Masz " << punkt << " trafien!"<<endl;
  358.         cout << "Na gorze mozesz sprawdzic trafienia."<<endl;
  359.         cout << "Co chcesz Teraz Zrobic?" <<endl;
  360.         cout << "Wypisz (1) aby wymienic na pieniadze" <<endl;
  361.         cout << "Enter: ";
  362.         cin >> wyb4;
  363.         switch(wyb4)
  364.         {
  365.         case 1:
  366.             {
  367.                 if(punkt == 3 && punkt < 4)
  368.                 {
  369.                     cash += 10;
  370.                     plik.close();
  371.                     return konto();
  372.                 }else if(punkt == 4 && punkt < 5)
  373.                 {
  374.                     cash += 100;
  375.                     plik.close();
  376.                     return konto();
  377.                 }else if(punkt == 5 && punkt < 6)
  378.                 {
  379.                     cash += 3500;
  380.                     plik.close();
  381.                     return konto();
  382.                 }else if(punkt == 6)
  383.                 {
  384.                     cash = cash + 1000000;
  385.                     cout << cash <<endl;
  386.                     getch();
  387.                     return konto();
  388.                 }else{
  389.  
  390.                     cout << "nie masz tyle trafien!" <<endl;
  391.                     cout << "Nacisnij dowolny klawisz klawiatury: ";
  392.                     getch();
  393.                     return konto();
  394.                 }
  395.             }
  396.         default: cout << "nieznana opcja!"; exit(0);
  397.         }
  398.  
  399.  
  400.     }
  401. }
  402.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement