samir82show

rudimentary

Nov 15th, 2013
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.92 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <math.h>
  3. #define SET 1
  4. #define UNSET 0
  5. int main()
  6. {
  7. int c, brace, bracket, parentheses, d_qot_f, s_qot_f, line_no;
  8. d_qot_f = s_qot_f = UNSET;
  9. brace = bracket = parentheses = line_no = 0;
  10.  
  11. while((c = getchar()) != EOF) {
  12. if(c == '\n') {
  13. if(brace > 0)
  14. printf("you have %d not closed braces in line no %d\n",brace, line_no);
  15. else if(brace < 0)
  16. printf("you have %d not opened braces in line no %d\n",abs(brace), line_no);
  17. if(parentheses > 0)
  18. printf("you have %d not closed parentheses in line no %d\n",parentheses, line_no);
  19. else if(parentheses < 0)
  20. printf("you have %d not opened parentheses in line no %d\n",abs(parentheses), line_no);
  21. if(bracket > 0)
  22. printf("you have %d not closed brackets in line no %d\n",bracket, line_no);
  23. else if(bracket < 0)
  24. printf("you have %d not opened brackets in line no %d\n",abs(bracket), line_no);
  25. if(s_qot_f == SET)
  26. printf("single quotation not closed\n");
  27. if(d_qot_f == SET)
  28. printf("double quotation not closed\n");
  29. line_no++;
  30. brace = bracket = parentheses = line_no = 0;
  31. d_qot_f = s_qot_f = UNSET;
  32. }
  33. else {
  34. switch(c) {
  35. case '{':++brace;
  36. break;
  37. case '(':++parentheses;
  38. break;
  39. case '[':++bracket;
  40. break;
  41. case '}':--brace;
  42. break;
  43. case ')':--parentheses;
  44. break;
  45. case ']':--bracket;
  46. break;
  47. case '\'':
  48. if(s_qot_f == UNSET)
  49. s_qot_f = SET;
  50. else
  51. s_qot_f = UNSET;
  52. break;
  53. case '"':
  54. if(d_qot_f == UNSET)
  55. d_qot_f = SET;
  56. else
  57. d_qot_f = UNSET;
  58. break;
  59. }
  60. }
  61.  
  62. if(brace > 0)
  63. printf("you have %d not closed braces in line no %d\n",brace, line_no);
  64. else if(brace < 0)
  65. printf("you have %d not opened braces in line no %d\n",abs(brace), line_no);
  66. if(parentheses > 0)
  67. printf("you have %d not closed parentheses in line no %d\n",parentheses, line_no);
  68. else if(parentheses < 0)
  69. printf("you have %d not opened parentheses in line no %d\n",abs(parentheses), line_no);
  70. if(bracket > 0)
  71. printf("you have %d not closed brackets in line no %d\n",bracket, line_no);
  72. else if(bracket < 0)
  73. printf("you have %d not opened brackets in line no %d\n",abs(bracket), line_no);
  74. if(s_qot_f == SET)
  75. printf("single quotation not closed\n");
  76. if(d_qot_f == SET)
  77. printf("double quotation not closed\n");
  78. }
  79.  
  80. return 0;
  81. }
Advertisement
Add Comment
Please, Sign In to add comment