Advertisement
Guest User

Untitled

a guest
Dec 26th, 2014
181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.31 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include<stdio.h>
  3. #define N 8
  4. int mainfunc(char arr[][N], int SHUROT, int AMUDOT, char mila[]);
  5. int godel(char str1[]);
  6. int LineSerch(char arr2[][N], int shura, int amuda, char mila1[], int size1);
  7. int ColumnSerch(char arr3[][N], int shura2, int amuda2, char mila2[], int size2);
  8. int Serch(char arr4[][N], int shura3, int amuda3, char mila3[], int size3);
  9. int main()
  10. {
  11. int G;
  12. char array[][N] = { { "cbcewzca" }, { "ahdfyihb" }, { "chmochmo" }, { "ghioedoc" }};
  13. char mila1[] = "chmo";
  14. G = mainfunc(array, 4, 8, mila1);
  15. printf("%d\n", G);
  16. return 0;
  17. }
  18.  
  19. int mainfunc(char arr[][N], int SHUROT, int AMUDOT, char mila[])
  20. {
  21. int R = 0, B;
  22. B = godel(mila);
  23. R += LineSerch(arr, SHUROT, AMUDOT, mila, B);
  24. R += ColumnSerch(arr, SHUROT, AMUDOT, mila, B);
  25. R += Serch(arr, SHUROT, AMUDOT, mila, B);
  26. return R;
  27. }
  28.  
  29. int godel(char str1[])
  30. {
  31. int P = 0;
  32. while (str1[P] != '\0')
  33. {
  34. P++;
  35. }
  36. return P;
  37. }
  38.  
  39. int LineSerch(char arr2[][N], int shura, int amuda, char mila1[], int size1)
  40. {
  41. int i, j, l, sum, count = 0;
  42. for (i = 0; i < shura; i++)
  43. {
  44. for (j = 0; j < amuda; j++)
  45. {
  46.  
  47. if (arr2[i][j] == mila1[0])
  48. {
  49. sum = 1;
  50. l = 1;
  51. while (j + l < amuda)
  52. {
  53. if (mila1[l] == arr2[i][j + l])
  54. sum++;
  55. l++;
  56. }
  57. if (sum == size1)
  58. count++;
  59. }
  60. }
  61. }
  62. return count;
  63. }
  64.  
  65. int ColumnSerch(char arr3[][N], int shura2, int amuda2, char mila2[], int size2)
  66. {
  67. int i, j, l, sum, count = 0;
  68. for (j = 0; j < amuda2; j++)
  69. {
  70. for (i = 0; i < shura2; i++)
  71. {
  72. if (arr3[i][j] == mila2[0])
  73. {
  74. sum = 1;
  75. l=1;
  76. while (i + l < amuda2)
  77. {
  78. if (mila2[l] == arr3[i + l][j])
  79. sum++;
  80. l++;
  81. if (sum == size2)
  82. {
  83. count++;
  84. l = amuda2;
  85. }
  86. }
  87.  
  88. }
  89. }
  90. }
  91. return count;
  92. }
  93.  
  94. int Serch(char arr4[][N], int shura3, int amuda3, char mila3[], int size3)
  95. {
  96. int i, j, l, sum, count = 0;
  97. for (i = 0; i < shura3; i++)
  98. {
  99. for (j = 0; j < amuda3; j++)
  100. {
  101.  
  102. if (arr4[i][j] == mila3[0])
  103. {
  104. sum = 1;
  105. l = 1;
  106. while ((j + l<amuda3) && (i + l<amuda3))
  107. {
  108. if (mila3[l] == arr4[i + l][j + l])
  109. sum++;
  110. l++;
  111. if (sum == size3)
  112. {
  113. count++;
  114. l = amuda3;
  115. }
  116. }
  117.  
  118. }
  119. }
  120. }
  121. return count;
  122. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement