Guest User

Untitled

a guest
May 22nd, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.41 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <ctype.h>
  3. #define Sogla (1u<<('b'-'a')|1u<<('c'-'a')|1u<<('d'-'a')|1u<<('f'-'a')|1u<<('g'-'a')|1u<<('h'-'a')|1u<<('i'-'a')|1u<<('j'-'a')|1u<<('k'-'a')|1u<<('l'-'a')|1u<<('m'-'a')|1u<<('n'-'a')|1u<<('p'-'a')|1u<<('q'-'a')|1u<<('r'-'a')|1u<<('s'-'a')|1u<<('t'-'a')|1u<<('u'-'a')|1u<<('v'-'a')|1u<<('w'-'a')|1u<<('x'-'a')|1u<<('z'-'a'))
  4. int is_letter(int c)
  5. {
  6. return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');
  7. }
  8.  
  9.  
  10. int is_space(int c)
  11. {
  12. return c == ' ' || c == '\t' || c == ',', c =='\n';
  13. }
  14.  
  15. unsigned int char_to_set(char c)
  16. {
  17. if(c<'a' || c>'z' || c=='a' || c=='e' || c=='i' || c=='o' || c=='u' || c=='y')
  18. {
  19. return 0;
  20. }
  21. else
  22. {
  23. return 1u<<(c-'a');
  24. }
  25. }
  26.  
  27. int main()
  28. {
  29. char alpha;
  30. unsigned int letters1_set = 0;
  31. unsigned int letters2_set = Sogla;
  32. int st = 1;
  33. int c;
  34. while((c = getchar()) != EOF)
  35. {
  36. if(st=0 && !is_space(c))
  37. {
  38. st=0;
  39. }
  40. else if(st=0 && is_space(c))
  41. {
  42. st=1;
  43. }
  44. else if(is_letter(c))
  45. {
  46. letters1_set=letters1_set | char_to_set(c);
  47. }
  48. else if(c==' ' || c=='\n' || c=='\t' || c==',')
  49. {
  50. letters2_set= letters2_set&letters1_set;
  51. letters1_set=0;
  52. }
  53. else if(!is_letter(c) && !is_space(c))
  54. {
  55. st=0;
  56. letters1_set=0;
  57. }
  58. if(c=='\n')
  59. {
  60. if(letters2_set != 0)
  61. {
  62. printf("Takie soglasnie est\n");
  63. }
  64. else
  65. {
  66. printf("Takih soglasnyh net\n");
  67. }
  68. letters2_set = Sogla;
  69. letters1_set = 0;
  70. st=1;
  71. }
  72. }
  73. return 0;
  74. }
Add Comment
Please, Sign In to add comment