Advertisement
Guest User

Untitled

a guest
Dec 13th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.63 KB | None | 0 0
  1. #include "stdafx.h"
  2. #include "conio.h"
  3. #include "iostream"
  4. #include "string"
  5. #include "cstdlib"
  6. #include "ctime"
  7. #include "windows.h"
  8.  
  9. using namespace std;
  10.  
  11. char p[9];
  12. char who = 'X';
  13. void creatTab()
  14. {
  15. cout << " | | " << endl;
  16. cout << " " << p[0] << " " << p[1] << " " << p[2] << " " << endl;
  17. cout << "____|____|____" << endl;
  18. cout << " | | " << endl;
  19. cout << " " << p[3] << " " << p[4] << " " << p[5] << " " << endl;
  20. cout << "____|____|____" << endl;
  21. cout << " | | " << endl;
  22. cout << " " << p[6] << " " << p[7] << " " << p[8] << " " << endl;
  23. cout << " | | " << endl;
  24. }
  25.  
  26. bool canImove(int i, char tab[])
  27. {
  28. if ((i > 9) || (i < 1) || (tab[i - 1] == 'X') || (tab[i - 1] == 'O'))
  29. return false;
  30.  
  31. else
  32. return true;
  33.  
  34. }
  35.  
  36. void move(char w)
  37. {
  38. int pole;
  39.  
  40. do {
  41. cout << " Wybierz pole(1-9) : " << endl;
  42. cin >> pole;
  43. system("cls");
  44. creatTab();
  45. } while (canImove(pole, p) == false);
  46.  
  47. p[pole - 1] = w;
  48.  
  49. if (w == 'X')
  50. who = 'O';
  51. if (w == 'O')
  52. who = 'X';
  53.  
  54. system("cls");
  55. creatTab();
  56.  
  57. }
  58.  
  59. char checkWin()
  60. {
  61. if ((p[0] == p[1]) && (p[1] == p[2]))
  62. return p[0];
  63. if ((p[3] == p[4]) && (p[4] == p[5]))
  64. return p[3];
  65. if ((p[6] == p[7]) && (p[7] == p[8]))
  66. return p[6];
  67. if ((p[0] == p[3]) && (p[3] == p[6]))
  68. return p[0];
  69. if ((p[1] == p[4]) && (p[4] == p[7]))
  70. return p[1];
  71. if ((p[2] == p[5]) && (p[5] == p[8]))
  72. return p[2];
  73. if ((p[0] == p[4]) && (p[4] == p[8]))
  74. return p[0];
  75. if ((p[4] == p[2]) && (p[6] == p[2]))
  76. return p[4];
  77. else
  78. return 'n';
  79. }
  80.  
  81. int main()
  82. {
  83. int exit = 2;
  84. do {
  85. p[0] = '1';
  86. p[1] = '2';
  87. p[2] = '3';
  88. p[3] = '4';
  89. p[4] = '5';
  90. p[5] = '6';
  91. p[6] = '7';
  92. p[7] = '8';
  93. p[8] = '9';
  94. system("cls");
  95. char znak;
  96. cout << "GRA KOLKO I KRZYZYK" << endl;
  97. for (int i = 0; i < 1;)
  98. {
  99. cout << "Wybor znaku ktory zaczyna " << endl;
  100. cin >> znak;
  101. if (znak == 'x' || znak == 'X' || znak == 'o' || znak == 'O')
  102. i++;
  103. else
  104. cout << "Podales zly znak " << endl;
  105. if ((znak == 'o') || (znak == 'O'))
  106. znak = 'O';
  107. else if ((znak == 'x') || (znak == 'X'))
  108. znak = 'X';
  109. }
  110. system("cls");
  111. creatTab();
  112.  
  113. for (int k = 0; k < 9; k++)
  114. {
  115. move(znak);
  116. if (checkWin() != 'n')
  117. break;
  118. if (znak == 'X')
  119. znak = 'O';
  120. else
  121. znak = 'X';
  122. }
  123.  
  124. if (checkWin() == 'n')
  125. {
  126. cout << "Runda remisowa!";
  127. }
  128. else
  129. {
  130. cout << "Runde wygrywa gracz:" << checkWin();
  131. }
  132. cout << endl << endl << "Aby zagrac jeszcze raz wybierz 1" << endl;
  133. cin >> exit;
  134. } while (exit == 1);
  135.  
  136. getchar();
  137. getchar();
  138. return 0;
  139. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement