Advertisement
Guest User

Untitled

a guest
Oct 17th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.71 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4.  
  5. namespace ConsoleApp
  6. {
  7. class Math
  8. {
  9. static public List<string> MathParse(string input)
  10. {
  11. var primer = new List<string>();
  12. var num = "";
  13. foreach (char k in input)
  14. {
  15. if (char.IsDigit(k))
  16. num += k;
  17. else
  18. {
  19. primer.Add(num);
  20. num = "";
  21. primer.Add(k + " ");
  22. }
  23. }
  24. primer.Add(num);
  25. return primer;
  26. }
  27. public static string MathSolve(List<string> primer)
  28. {
  29. var i = 1;
  30. while (i < primer.Count)
  31. {
  32. if (primer[i] == "* " || primer[i] == "/ " || primer[i] == "% ")
  33. {
  34. var z = primer[i];
  35. string ans;
  36. if (z == "* ")
  37. {
  38. ans = (int.Parse(primer[i - 1]) * int.Parse(primer[i + 1])).ToString();
  39. }
  40. else if (z == "/ ")
  41. {
  42. ans = (int.Parse(primer[i - 1]) / int.Parse(primer[i + 1])).ToString();
  43. }
  44. else
  45. {
  46. ans = (int.Parse(primer[i - 1]) % int.Parse(primer[i + 1])).ToString();
  47. }
  48. primer[i - 1] = ans;
  49. primer.RemoveAt(i + 1);
  50. primer.RemoveAt(i);
  51.  
  52. }
  53. else i += 1;
  54. }
  55. if (primer.Count == 1)
  56. return primer[0];
  57. i = 1;
  58. while (i < primer.Count)
  59. {
  60. if (primer[i] == "+ " || primer[i] == "- ")
  61. {
  62. var z = primer[i];
  63. string ans;
  64. if (z == "+ ")
  65. {
  66. ans = (int.Parse(primer[i - 1]) + int.Parse(primer[i + 1])).ToString();
  67. }
  68. else
  69. {
  70. ans = (int.Parse(primer[i - 1]) - int.Parse(primer[i + 1])).ToString();
  71. }
  72. primer[i - 1] = ans;
  73. primer.RemoveAt(i + 1);
  74. primer.RemoveAt(i);
  75. }
  76. else i += 1;
  77. }
  78. return primer[0];
  79. }
  80. public static string MathSolve(string objects)
  81. {
  82. var primer = MathParse(objects);
  83. var answer = MathSolve(primer);
  84. return answer;
  85. }
  86. }
  87. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement