Facebook
From Torrid Cat, 6 Years ago, written in C++.
Embed
Download Paste or View Raw
Hits: 263
  1. #include <cstdlib>
  2. #include <iostream>
  3. using namespace std;
  4.  
  5. char plansza[10] = {'o','1','2','3','4','5','6','7','8','9'};
  6. int czywygrana();
  7. void tablica();
  8.  
  9. int main()
  10. {
  11.         int gracz = 1,i,wybor;
  12.  
  13.         char znak;
  14.         do
  15.         {
  16.                 tablica();
  17.                 gracz=(gracz%2)?1:2;
  18.  
  19.                 cout << "Gracz " << gracz << ", wybierz numer:  ";
  20.                 cin >> wybor;
  21.  
  22.                 znak=(gracz == 1) ? 'X' : 'O';
  23.  
  24.                 if (wybor == 1 && plansza[1] == '1')
  25.  
  26.                         plansza[1] = znak;
  27.                 else if (wybor == 2 && plansza[2] == '2')
  28.  
  29.                         plansza[2] = znak;
  30.                 else if (wybor == 3 && plansza[3] == '3')
  31.  
  32.                         plansza[3] = znak;
  33.                 else if (wybor == 4 && plansza[4] == '4')
  34.  
  35.                         plansza[4] = znak;
  36.                 else if (wybor == 5 && plansza[5] == '5')
  37.  
  38.                         plansza[5] = znak;
  39.                 else if (wybor == 6 && plansza[6] == '6')
  40.  
  41.                         plansza[6] = znak;
  42.                 else if (wybor == 7 && plansza[7] == '7')
  43.  
  44.                         plansza[7] = znak;
  45.                 else if (wybor == 8 && plansza[8] == '8')
  46.  
  47.                         plansza[8] = znak;
  48.                 else if (wybor == 9 && plansza[9] == '9')
  49.  
  50.                         plansza[9] = znak;
  51.                 else
  52.                 {
  53.                         cout<<"Nieprawidłowy ruch";
  54.  
  55.                         gracz--;
  56.                         cin.ignore();
  57.                         cin.get();
  58.                 }
  59.                 i=czywygrana();
  60.  
  61.                 gracz++;
  62.         }while(i==-1);
  63.         tablica();
  64.         if(i==1)
  65.  
  66.                 cout<<"==>\a Gracz "<<--gracz<<" wygrywa ";
  67.         else
  68.                 cout<<"==>\a Remis";
  69.  
  70.         cin.ignore();
  71.         cin.get();
  72.         return 0;
  73. }
  74.  
  75. int czywygrana()
  76. {
  77.         if (plansza[1] == plansza[2] && plansza[2] == plansza[3])
  78.  
  79.                 return 1;
  80.         else if (plansza[4] == plansza[5] && plansza[5] == plansza[6])
  81.  
  82.                 return 1;
  83.         else if (plansza[7] == plansza[8] && plansza[8] == plansza[9])
  84.  
  85.                 return 1;
  86.         else if (plansza[1] == plansza[4] && plansza[4] == plansza[7])
  87.  
  88.                 return 1;
  89.         else if (plansza[2] == plansza[5] && plansza[5] == plansza[8])
  90.  
  91.                 return 1;
  92.         else if (plansza[3] == plansza[6] && plansza[6] == plansza[9])
  93.  
  94.                 return 1;
  95.         else if (plansza[1] == plansza[5] && plansza[5] == plansza[9])
  96.  
  97.                 return 1;
  98.         else if (plansza[3] == plansza[5] && plansza[5] == plansza[7])
  99.  
  100.                 return 1;
  101.         else if (plansza[1] != '1' && plansza[2] != '2' && plansza[3] != '3'
  102.                     && plansza[4] != '4' && plansza[5] != '5' && plansza[6] != '6'
  103.                   && plansza[7] != '7' && plansza[8] != '8' && plansza[9] != '9')
  104.  
  105.                 return 0;
  106.         else
  107.                 return -1;
  108. }
  109.  
  110.  
  111. void tablica()
  112. {
  113.         system("cls");
  114.         cout << "\n\n\t Krzyżyk i kółko \n\n";
  115.  
  116.         cout << "Gracz 1 (X)  -  Gracz 2 (O)" << endl << endl;
  117.         cout << endl;
  118.  
  119.         cout << "     |     |     " << endl;
  120.         cout << "  " << plansza[1] << "  |  " << plansza[2] << "  |  " << plansza[3] << endl;
  121.  
  122.         cout << "_____|_____|_____" << endl;
  123.         cout << "     |     |     " << endl;
  124.  
  125.         cout << "  " << plansza[4] << "  |  " << plansza[5] << "  |  " << plansza[6] << endl;
  126.  
  127.         cout << "_____|_____|_____" << endl;
  128.         cout << "     |     |     " << endl;
  129.  
  130.         cout << "  " << plansza[7] << "  |  " << plansza[8] << "  |  " << plansza[9] << endl;
  131.  
  132.         cout << "     |     |     " << endl << endl;
  133. }
  134.