Advertisement
UniQuet0p1

Untitled

Sep 29th, 2021
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.47 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.Design;
  4. using MenuSystem;
  5.  
  6.  
  7. namespace ConsoleApp
  8. {
  9. class Program
  10. {
  11. private static double CalculatorCurrentDisplay = 0.0;
  12.  
  13. static void Main(string[] args)
  14. {
  15. Console.Clear();
  16.  
  17.  
  18. var mainMenu = new Menu("Calculator Main", EMenuLevel.Root);
  19. mainMenu.AddMenuItems(new List<MenuItem>()
  20. {
  21. new MenuItem("A", "Binary operations", SubmenuBinary),
  22. new MenuItem("S", "Unary operations", SubmenuUnary),
  23. });
  24.  
  25. mainMenu.Run();
  26. }
  27.  
  28. public static string MethodA()
  29. {
  30. Console.WriteLine("Method A!!!!!");
  31. return "";
  32. }
  33.  
  34. public static string SubmenuBinary()
  35. {
  36. var menu = new Menu("Binary", EMenuLevel.First);
  37. menu.AddMenuItems(new List<MenuItem>()
  38. {
  39. new MenuItem("+", "+", Add),
  40. new MenuItem("-", "-", Subtract),
  41. new MenuItem("/", "/", Divide),
  42. new MenuItem("*", "*", Multiplication),
  43.  
  44. });
  45. var res = menu.Run();
  46. return res;
  47. }
  48.  
  49. public static string Add()
  50. {
  51. // CalculatorCurrentDisplay
  52. Console.WriteLine("Current value: " + CalculatorCurrentDisplay);
  53. Console.WriteLine("plus");
  54. Console.Write("number: ");
  55. var n = Console.ReadLine()?.Trim();
  56. double.TryParse(n, out var converted);
  57.  
  58. CalculatorCurrentDisplay = CalculatorCurrentDisplay + converted;
  59.  
  60.  
  61. return "";
  62. }
  63.  
  64. public static string Subtract() //Minuse
  65. {
  66. // CalculatorCurrentDisplay
  67. Console.WriteLine("Current value: " + CalculatorCurrentDisplay);
  68. Console.WriteLine("minuse");
  69. Console.Write("number: ");
  70. var n = Console.ReadLine()?.Trim();
  71. double.TryParse(n, out var converted);
  72.  
  73. CalculatorCurrentDisplay = CalculatorCurrentDisplay - converted;
  74.  
  75.  
  76. return "";
  77. }
  78.  
  79. public static string Divide() //Деление
  80. {
  81. // CalculatorCurrentDisplay
  82. Console.WriteLine("Current value: " + CalculatorCurrentDisplay);
  83. Console.WriteLine("divide");
  84. Console.Write("number: ");
  85. var n = Console.ReadLine()?.Trim();
  86. double.TryParse(n, out var converted);
  87.  
  88. CalculatorCurrentDisplay = CalculatorCurrentDisplay / converted;
  89.  
  90.  
  91. return "";
  92. }
  93.  
  94. public static string Multiplication() //Умножение
  95. {
  96. // CalculatorCurrentDisplay
  97. Console.WriteLine("Current value: " + CalculatorCurrentDisplay);
  98. Console.WriteLine("multiplication");
  99. Console.Write("number: ");
  100. var n = Console.ReadLine()?.Trim();
  101. double.TryParse(n, out var converted);
  102.  
  103. CalculatorCurrentDisplay = CalculatorCurrentDisplay * converted;
  104.  
  105.  
  106.  
  107. return "";
  108. }
  109.  
  110. public static string X_power_Y() //x в степени y
  111. {
  112. // CalculatorCurrentDisplay
  113. Console.WriteLine("Current value: " + CalculatorCurrentDisplay);
  114. Console.WriteLine("X_power_Y");
  115. Console.Write("number: ");
  116. var n = Console.ReadLine()?.Trim();
  117. double.TryParse(n, out var converted);
  118.  
  119. CalculatorCurrentDisplay = Math.Pow(CalculatorCurrentDisplay,converted);
  120.  
  121.  
  122.  
  123. return "";
  124. }
  125.  
  126. public static string SubmenuUnary()
  127. {
  128. var menu = new Menu("Unary", EMenuLevel.First);
  129. menu.AddMenuItems(new List<MenuItem>()
  130. {
  131. new MenuItem("Negate", "Negate", Negative),
  132. new MenuItem("Square", "Square", Square),
  133. new MenuItem("Root", "Root", Root),
  134. });
  135. var res = menu.Run();
  136. return res;
  137. }
  138.  
  139. public static string Negative() //Негативное число
  140. {
  141. // CalculatorCurrentDisplay
  142. Console.WriteLine("Current value: " + CalculatorCurrentDisplay);
  143. Console.WriteLine("negative");
  144. Console.Write("number: ");
  145.  
  146. CalculatorCurrentDisplay = CalculatorCurrentDisplay * (-1);
  147.  
  148. return "";
  149. }
  150.  
  151. public static string Square() //Возводим в квадрат
  152. {
  153. // CalculatorCurrentDisplay
  154. Console.WriteLine("Current value: " + CalculatorCurrentDisplay);
  155. Console.WriteLine("square");
  156. Console.Write("number: ");
  157.  
  158. CalculatorCurrentDisplay = CalculatorCurrentDisplay * CalculatorCurrentDisplay;
  159.  
  160. return "";
  161. }
  162.  
  163. public static string Root() //Корень
  164. {
  165. // CalculatorCurrentDisplay
  166. Console.WriteLine("Current value: " + CalculatorCurrentDisplay);
  167. Console.WriteLine("Sqrt");
  168. Console.Write("number: ");
  169.  
  170. CalculatorCurrentDisplay = Math.Sqrt(CalculatorCurrentDisplay);
  171.  
  172. return "";
  173. }
  174. }
  175. }
  176.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement