Advertisement
Guest User

Untitled

a guest
Feb 16th, 2020
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.38 KB | None | 0 0
  1. /* ************************************************************************** */
  2. /* */
  3. /* ::: :::::::: */
  4. /* comp.c :+: :+: :+: */
  5. /* +:+ +:+ +:+ */
  6. /* By: gmuoz-ji <gmuoz-ji@student.42.fr> +#+ +:+ +#+ */
  7. /* +#+#+#+#+#+ +#+ */
  8. /* Created: 2020/02/16 17:33:41 by gmuoz-ji #+# #+# */
  9. /* Updated: 2020/02/16 23:33:55 by gmuoz-ji ### ########.fr */
  10. /* */
  11. /* ************************************************************************** */
  12.  
  13. #include <unistd.h>
  14. #include <stdio.h>
  15.  
  16. int check_all(void);
  17. int comprobar_filas(int x, int y);
  18. int comprobar_columnas(int x, int y);
  19. int comprobar_rowleft(void);
  20. int comprobar_rowright(void);
  21. int comprobar_colup(void);
  22. int comprobar_coldown(void);
  23.  
  24. int g_grid[6][6]= {0, 4, 3, 2, 1, 0,
  25. 4, 0, 0, 0, 0, 1,
  26. 3, 0 ,0 ,0, 0, 2,
  27. 2, 0, 0, 0, 0, 2,
  28. 1, 0, 0, 0, 0, 2,
  29. 0, 1, 2, 2, 2, 0};
  30.  
  31.  
  32.  
  33. int check_all(void)
  34. {
  35. int ok1;
  36. int ok2;
  37. int ok3;
  38. int ok4;
  39. int ok5;
  40. int ok6;
  41. int ok7;
  42.  
  43. ok1 = comprobar_filas(0,0));
  44. ok2 = comprobar_columnas(0,0));
  45. ok3 = comprobar_columnas(0,0));
  46. ok4 = comprobar_rowleft());
  47. ok5 = comprobar_rowright());
  48. ok6 = comprobar_colup());
  49. ok7 = comprobar_coldown());
  50.  
  51. if (ok1 != 0 || ok2 != 0 || ok3 !=0 || ok4 != 0 || ok5 != 0 || ok6 != 0 || ok7 != 0)
  52. return (1)
  53. else
  54. return (0);
  55. }
  56.  
  57. int comprobar_rowleft()
  58. {
  59. int s1 =0;
  60. int s2 =0;
  61. int s3 = 0;
  62. int s4 = 0;
  63. int j;
  64.  
  65. j = 1;
  66. while(j <= 4)
  67. {
  68. if (g_grid[j][0]== 1)
  69. s1 = s1 + 1;
  70. if (g_grid[j][0]== 2)
  71. s2 = s2 + 1;
  72. if (g_grid[j][0]== 3)
  73. s3 = s3 + 1;
  74. if (g_grid[j][0]== 4)
  75. s4 = s4 + 1;
  76. j++;
  77. }
  78. if((s1 != 1) || (s2 >3) || (s3 >2) || (s4 > 1))
  79. return (5);
  80. return (0);
  81. }
  82.  
  83. int comprobar_rowright()
  84. {
  85. int s1 =0;
  86. int s2 =0;
  87. int s3 = 0;
  88. int s4 = 0;
  89. int j;
  90.  
  91. j = 1;
  92. while(j <= 4)
  93. {
  94. if (g_grid[j][5]== 1)
  95. s1 = s1 + 1;
  96. if (g_grid[j][5]== 2)
  97. s2 = s2 + 1;
  98. if (g_grid[j][5]== 3)
  99. s3 = s3 + 1;
  100. if (g_grid[j][5]== 4)
  101. s4 = s4 + 1;
  102. j++;
  103. }
  104. if((s1 != 1) || (s2 >3) || (s3 >2) || (s4 > 1))
  105. return (5);
  106. return (0);
  107. }
  108.  
  109.  
  110. int comprobar_colup()
  111. {
  112. int s1 =0;
  113. int s2 =0;
  114. int s3 = 0;
  115. int s4 = 0;
  116. int i;
  117.  
  118. i = 1;
  119. {
  120. while(i <= 4)
  121. {
  122. if (g_grid[0][i]== 1)
  123. s1 = s1 + 1;
  124. if (g_grid[0][i]== 2)
  125. s2 = s2 + 1;
  126. if (g_grid[0][i]== 3)
  127. s3 = s3 + 1;
  128. if (g_grid[0][i]== 4)
  129. s4 = s4 + 1;
  130. i++;
  131. }
  132.  
  133. }
  134. if((s1 != 1) || (s2 >3) || (s3 >2) || (s4 > 1))
  135. return (5);
  136. return (0);
  137. }
  138.  
  139. int comprobar_coldown()
  140. {
  141. int s1 =0;
  142. int s2 =0;
  143. int s3 = 0;
  144. int s4 = 0;
  145. int i;
  146.  
  147. i = 1;
  148. {
  149. while(i <= 4)
  150. {
  151. if (g_grid[5][i]== 1)
  152. s1 = s1 + 1;
  153. if (g_grid[5][i]== 2)
  154. s2 = s2 + 1;
  155. if (g_grid[5][i]== 3)
  156. s3 = s3 + 1;
  157. if (g_grid[5][i]== 4)
  158. s4 = s4 + 1;
  159. i++;
  160. }
  161.  
  162. }
  163. if((s1 != 1) || (s2 >3) || (s3 >2) || (s4 > 1))
  164. return (5);
  165. return (0);
  166. }
  167.  
  168. int comprobar_filas(int x, int y)
  169. {
  170. int i;
  171. int s;
  172.  
  173. i = 1;
  174. while(i <= 4)
  175. {
  176. s = g_grid[0][i]+g_grid[5][i];
  177. if (s == 3 || s == 4 || s == 5)
  178. {
  179. x = x + g_grid[0][i];
  180. y = y + g_grid[5][i];
  181. i++;
  182. }
  183. else
  184. {
  185. return(1);
  186. break;
  187. }
  188. }
  189. if ((x < 7 || x > 10) || (x < 7 || x > 10))
  190. return (2);
  191. else
  192. return (0);
  193. }
  194.  
  195.  
  196. int comprobar_columnas(int x, int y)
  197. {
  198. int j;
  199. int s;
  200.  
  201. j = 1;
  202. while(j <= 4)
  203. {
  204. s = g_grid[j][0]+g_grid[j][5];
  205. if (s == 3 || s == 4 || s == 5)
  206. {
  207. x = x + g_grid[j][0];
  208. y = y + g_grid[j][5];
  209. j++;
  210. }
  211. else
  212. {
  213. return(1);
  214. break;
  215. }
  216. }
  217. if ((x < 7 || x > 10) || (x < 7 || x > 10))
  218. return (2);
  219. else
  220. return (0);
  221. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement