Advertisement
Guest User

Untitled

a guest
Dec 11th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.14 KB | None | 0 0
  1. #include "pch.h"
  2. #include <iostream>
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. #include <string.h>
  6. #include <windows.h>
  7. //#define _CRT_SECURE_NO_WARNINGS
  8.  
  9. int main()
  10. {
  11. SetConsoleCP(1251);
  12. SetConsoleOutputCP(1251);
  13. char txt[255], ok[] = "ок";
  14. char isk1[] = "скок", isk2[] = "блок", isk3[] = "восток";
  15. char isk4[] = "брелок", isk5[] = "щелок", isk6[] = "войлок";
  16. char isk7[] = "челнок", isk8[] = "зарок", isk9[] = "урок";
  17. char isk10[] = "знаток", isk11[] = "поток", isk12[] = "сток";
  18. char isk13[] = "срок", isk14[] = "артишок";
  19. char P;
  20. char *p;
  21. char *context;
  22. char *l;
  23. int i;
  24.  
  25. printf("Введите текст: \n");
  26. gets_s(txt);
  27.  
  28. p = strtok_s(txt, " .,:!?", &context);
  29. if (strstr(p, ok))
  30. {
  31. i = strstr(p, ok) - p + 1;
  32. P = *(strstr(p, ")") - 1);
  33. l = strstr(p, ok);
  34. *(strstr(p, "(")) = ' ';
  35. *(strstr(p, ")") - 1) = ' ';
  36. *(strstr(p, ")")) = ' ';
  37. if (i == (strlen(p) - 4))
  38. {
  39. if (!(strlen(p) == 6 || strstr(p, isk1) || strstr(p, isk2) || strstr(p, isk3) || strstr(p, isk4) || strstr(p, isk5) || strstr(p, isk6) || strstr(p, isk7) || strstr(p, isk8) || strstr(p, isk9) || strstr(p, isk10) || strstr(p, isk11) || strstr(p, isk12) || strstr(p, isk13) || strstr(p, isk14)))
  40. {
  41. *l = 'к';
  42. switch (P)
  43. {
  44. case 'И' :
  45. printf("%s\n",p);
  46. break;
  47. case 'Р' :
  48. *(l+1) = 'а';
  49. printf("%s\n", p);
  50. break;
  51. case 'Д' :
  52. *(l+1) = 'у';
  53. printf("%s\n", p);
  54. break;
  55. case 'В' :
  56. printf("%s\n", p);
  57. break;
  58. case 'Т' :
  59. *(l+1) = 'о';
  60. *(l+2) = 'м';
  61. printf("%s\n", p);
  62. break;
  63. case 'П' :
  64. *(l+1) = 'е';
  65. printf("%s\n", p);
  66. break;
  67. default :
  68. printf("%s\n", p);
  69. break;
  70. }
  71. }
  72. else
  73. {
  74. switch (P)
  75. {
  76. case 'И':
  77. printf("%s\n", p);
  78. break;
  79. case 'Р':
  80. *(l + 2) = 'а';
  81. printf("%s\n", p);
  82. break;
  83. case 'Д':
  84. *(l + 2) = 'у';
  85. printf("%s\n", p);
  86. break;
  87. case 'В':
  88. printf("%s\n", p);
  89. break;
  90. case 'Т':
  91. *(l + 2) = 'о';
  92. *(l + 3) = 'м';
  93. printf("%s\n", p);
  94. break;
  95. case 'П':
  96. *(l + 2) = 'е';
  97. printf("%s\n", p);
  98. break;
  99. default:
  100. printf("%s\n", p);
  101. break;
  102. }
  103. }
  104. }
  105. }
  106.  
  107. while (p = strtok_s(NULL, " .,:!?", &context))
  108. {
  109. if (strstr(p, ok))
  110. {
  111. i = strstr(p, ok) - p + 1;
  112. P = *(strstr(p, ")") - 1);
  113. l = strstr(p, ok);
  114. *(strstr(p, "(")) = ' ';
  115. *(strstr(p, ")") - 1) = ' ';
  116. *(strstr(p, ")")) = ' ';
  117. if (i == (strlen(p) - 4))
  118. {
  119. if (!(strlen(p) == 6 || strstr(p, isk1) || strstr(p, isk2) || strstr(p, isk3) || strstr(p, isk4) || strstr(p, isk5) || strstr(p, isk6) || strstr(p, isk7) || strstr(p, isk8) || strstr(p, isk9) || strstr(p, isk10) || strstr(p, isk11) || strstr(p, isk12) || strstr(p, isk13) || strstr(p, isk14)))
  120. {
  121. *l = 'к';
  122. switch (P)
  123. {
  124. case 'И':
  125. printf("%s\n", p);
  126. break;
  127. case 'Р':
  128. *(l + 1) = 'а';
  129. printf("%s\n", p);
  130. break;
  131. case 'Д':
  132. *(l + 1) = 'у';
  133. printf("%s\n", p);
  134. break;
  135. case 'В':
  136. printf("%s\n", p);
  137. break;
  138. case 'Т':
  139. *(l + 1) = 'о';
  140. *(l + 2) = 'м';
  141. printf("%s\n", p);
  142. break;
  143. case 'П':
  144. *(l + 1) = 'е';
  145. printf("%s\n", p);
  146. break;
  147. default:
  148. printf("%s\n", p);
  149. break;
  150. }
  151. }
  152. else
  153. {
  154. switch (P)
  155. {
  156. case 'И':
  157. printf("%s\n", p);
  158. break;
  159. case 'Р':
  160. *(l + 2) = 'а';
  161. printf("%s\n", p);
  162. break;
  163. case 'Д':
  164. *(l + 2) = 'у';
  165. printf("%s\n", p);
  166. break;
  167. case 'В':
  168. printf("%s\n", p);
  169. break;
  170. case 'Т':
  171. *(l + 2) = 'о';
  172. *(l + 3) = 'м';
  173. printf("%s\n", p);
  174. break;
  175. case 'П':
  176. *(l + 2) = 'е';
  177. printf("%s\n", p);
  178. break;
  179. default:
  180. printf("%s\n", p);
  181. break;
  182. }
  183. }
  184. }
  185. }
  186.  
  187. }
  188.  
  189.  
  190. system("pause");
  191. return 0;
  192. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement