Advertisement
Hemul

game_stone

Dec 11th, 2018
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.58 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <stdbool.h>
  4. #define N = 25
  5.  
  6.  
  7. int arr[N];
  8.  
  9. int output(int a[])
  10. {
  11.     int i;
  12.     for (i = 0; i < N; i++)
  13.         printf("%d", a[i]);
  14.     return 0;
  15. }
  16.  
  17. int player()
  18. {
  19.     int k, k1, k2;
  20.     printf("stones quantity\n");
  21.     scanf("%d",&k);
  22.  
  23.     if(k==1){
  24.         scanf("%d", &k1);
  25.         arr[k1] = 0;
  26.     }
  27.     else if (k==2){
  28.         scanf("%d%d", &k1, &k2);
  29.         arr[k1] = 0;
  30.         arr[k2] = 0;
  31.     }
  32.  
  33.     return 0;
  34. }
  35.  
  36.  
  37. int array_list()
  38. {
  39.     int i;
  40.     int a[25];
  41.     for (i = 0; i < N; i++)
  42.     a[i] = i;
  43.     for (i = 0; i < N; i++)
  44.         printf("%3d", a[i]);
  45.     return 0;
  46. }
  47.  
  48.  
  49. int bot()
  50. {
  51.     int i,n,k,k1,k2;
  52.     int counter = 0;
  53.     n = rand() % 2 + 1;
  54.     for (i = 0; i < N-1; i++)
  55.     {
  56.         if (arr[i] + arr[i + 1] > 1)
  57.             counter++;
  58.     }
  59.  
  60.     if (counter == 0){
  61.         n = 1;
  62.         do{
  63.             k = rand() % 26;
  64.             }
  65.         while (arr[k] == 0);
  66.         arr[k] = 0;
  67.     }
  68.     else
  69.     {
  70.         do
  71.         {
  72.             k1 = rand() % 25;
  73.             k2 = k1 + 1;
  74.         } while (arr[k1] == 0 || arr[k2]==0);
  75.         arr[k1] = 0;
  76.         arr[k2] = 0;
  77.     }
  78.  
  79.     return 0;
  80. }
  81.  
  82.  
  83. int check(int *prov)
  84. {
  85.     bool k;
  86.     int i;
  87.     for (i = 0; i < N; i++)
  88.     {
  89.         if (prov[i] == 0)
  90.         {
  91.             k = true;
  92.         }
  93.         else
  94.         {
  95.             k = false;
  96.             break;
  97.         }
  98.     }
  99.     if (k == false)
  100.         return 1;
  101.     else
  102.         return 0;
  103. }
  104.  
  105.  
  106. int main()
  107. {
  108.     int i;
  109.     for (i = 0; i < N; i++)
  110.         arr[i] = 1;
  111.  
  112.     do
  113.     {
  114.             array_list();
  115.             printf("\n");
  116.             output(arr);
  117.             printf("\n");
  118.             player();
  119.             if (check(arr) == 0)
  120.             {
  121.                 printf("player win");
  122.                 break;
  123.             }
  124.  
  125.             bot();
  126.             if (check(arr) == 0)
  127.             {
  128.                 printf("bot win");
  129.                 break;
  130.             }
  131.  
  132.     } while (true);
  133.  
  134.     return 0;
  135. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement