Advertisement
Guest User

Untitled

a guest
Nov 13th, 2019
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.43 KB | None | 0 0
  1. #include <iostream>
  2. #include <windows.h>
  3.  
  4. using namespace std;
  5.  
  6. char square[10] = {'o','1','2','3','4','5','6','7','8','9'}; //plansza do gry
  7.  
  8. int pole; //zmienna odpowiadajaca za pole
  9. char znak; //zmienna odpowiadajaca za znaki
  10. int i; //zmienna wywolujaca sprawdzanie
  11. int sprawdzanie();
  12.  
  13. void rysuj() { //funkcja rysujaca tablice
  14.  
  15. system("cls"); //odswiezanie tablicy
  16. cout << endl;
  17. cout << square[1] << " | " << square[2] << " | " << square[3] << endl;
  18. cout << "-----------------" << endl;
  19. cout << square[4] << " | " << square[5] << " | " << square[6] << endl;
  20. cout << "-----------------" << endl;
  21. cout << square[7] << " | " << square[8] << " | " << square[9] << endl;
  22. cout << endl;
  23. }
  24.  
  25. int gransko(){ //funkcja ktora odpowiada za wstawianie znakow
  26. int gracz = 1;
  27. do{
  28. if(gracz%2 == true) { //modulo (jezeli nie ma reszty z dzielenia przez 2 - tura gracza pierwszego, jest reszta - tura gracza drugiego
  29. gracz = 1;
  30. }
  31. else {
  32. gracz = 2;
  33. }
  34.  
  35. cout << "gracz " << gracz << " podaj pole ";
  36. cin >> pole;
  37.  
  38. if(gracz == 1) {
  39. znak = 'x';
  40.  
  41. }
  42. else {
  43. znak ='O';
  44. }
  45.  
  46.  
  47. if (pole == 1 && square[1] == '1')
  48.  
  49. square[1] = znak;
  50. else if (pole == 2 && square[2] == '2')
  51.  
  52. square[2] = znak;
  53. else if (pole == 3 && square[3] == '3')
  54.  
  55. square[3] = znak;
  56. else if (pole == 4 && square[4] == '4')
  57.  
  58. square[4] = znak;
  59. else if (pole == 5 && square[5] == '5')
  60.  
  61. square[5] = znak;
  62. else if (pole == 6 && square[6] == '6')
  63.  
  64. square[6] = znak;
  65. else if (pole == 7 && square[7] == '7')
  66.  
  67. square[7] = znak;
  68. else if (pole == 8 && square[8] == '8')
  69.  
  70. square[8] = znak;
  71. else if (pole == 9 && square[9] == '9')
  72.  
  73. square[9] = znak;
  74. else
  75. {
  76. cout<<"Invalid move ";
  77.  
  78. gracz--;
  79. cin.ignore();
  80. cin.get();
  81. }
  82. i = sprawdzanie();
  83.  
  84. gracz++;
  85. }while(i == -1);
  86. rysuj();
  87. if(i == 1){
  88. cout << "wygra³ gracz " << --gracz;
  89. }else{
  90. cout << "remis";
  91. }
  92.  
  93. return 0;
  94.  
  95.  
  96. }
  97.  
  98. int sprawdzanie(){
  99. if(square[1] == square[2] && square[2] == square[3]){
  100.  
  101. return 1;
  102. }else if(square[4] == square[5] && square[5] == square[6]){
  103.  
  104. return 1;
  105. }else if(square[7] == square[8] && square[8] == square[9]){
  106.  
  107. return 1;
  108. }else if(square[1] == square[4] && square[4] == square[7]){
  109.  
  110. return 1;
  111. }else if(square[2] == square[5] && square[5] == square[8]){
  112.  
  113. return 1;
  114. }else if(square[3] == square[6] && square[6] == square[9]){
  115.  
  116. return 1;
  117. }else if(square[1] == square[5] && square[5] == square[9]){
  118.  
  119. return 1;
  120. }else if(square[3] == square[5] && square[5] == square[7]){
  121.  
  122. return 1;
  123. }else if(square[1] != '1' && square[2] != '2' && square[3] != '3'
  124. && square[4] != '4' && square[5] != '5' && square[6] != '6'
  125. && square[7] != '7' && square[8] != '8' && square[9] != '9'){
  126.  
  127. return 0;
  128. }else{
  129. return -1;
  130. }
  131. }
  132.  
  133. int main()
  134. {
  135. rysuj();
  136. gransko();
  137. return 0;
  138. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement