Меню в консоли c#
Формулировка задачи:
Помогите сделать меню в консоли, нужно что было было что то такое:
Меню:
1. Ответ на задание №1
2. Ответ на задание №2
3. Выход
При открытии пункта 1 на экране появляться должен ответ первого задания, 2 второго. И если такое возможно еще при выборе задания что бы был пункт "1. Вернуться в главное меню."
Так же нужно сделать выбор пункта не цифрами, а стрелочками и клавишей Enter (соку выбор стрелочкой что бы был " <==")
Вот код который надо засунуть в меню:
Вот такой нужен выбор пунктов, только что бы когда выбираешь пункт меню пропадало а не оставалось как в коде.
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace ConsoleApplication6
- {
- public class Name1
- {
- public static double a = 0.5;
- public const double x = 3.4;
- public const double b = 1.1;
- public static double fun1(double aa)
- {
- double ch = Math.Cos(x - 3 * b) - Math.Pow((a * Math.Pow(x, 6) + Math.Pow(Math.E, a * x)), 2) + 0.3 * Math.Pow(10, -1.5) * x;
- double zn = 7.3 * Math.Pow(10, 7) * Math.Abs(x - Math.Pow(a, 5)) - Math.Tan(a + x) + Math.Sqrt(Math.Pow(Math.Sin(a), 2) * a + Math.PI) - Math.Log(x, Math.E);
- aa = Math.Sqrt(Math.Abs(Math.Log10(Convert.ToDouble(Math.Abs(ch / zn)))));
- Console.WriteLine("Y=" + aa);
- return aa;
- }
- }
- public class Name2
- {
- public const bool A = true;
- public const bool B = true;
- public const bool C = false;
- public const double X = 1.5;
- public const double Y = 2.5;
- public static bool fun2(bool z)
- {
- z = A && !C || X < 4.2 && Y >= 3.5 || !(B && C || X > Y);
- return z;
- }
- }
- class Program
- {
- static void Main(string[] args)
- {
- double y = 0;
- double f = 0;
- bool b;
- bool bb = false;
- Name1 ob1 = new Name1();
- Name2 ob2 = new Name2();
- f = Name1.fun1(y);
- b = Name2.fun2(bb);
- Console.WriteLine("Z=" + b);
- Console.ReadLine();
- }
- }
- }
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace ConsoleApplication6
- {
- class Program
- {
- public static void Print(string[] points, int choose)
- {
- Console.Clear();
- for (int i = 0; i < points.Length; i++)
- Console.WriteLine("{0} {1}", points[i], i == choose ? "<<--" : "");
- }
- public static int Menu(string[] points)
- {
- Console.CursorVisible = false; // Чтобы не было мигающего курсора.
- int choose = 0;
- while (true) // Бесконечный цикл.
- {
- Print(points, choose);
- switch (Console.ReadKey(true).Key)
- {
- case ConsoleKey.UpArrow: choose--; break;
- case ConsoleKey.DownArrow: choose++; break;
- case ConsoleKey.D: Console.CursorVisible = true; return -1;
- case ConsoleKey.Enter: Console.CursorVisible = true; return choose;
- }
- choose = (choose + points.Length) % points.Length; // Зацикливаем выбор.
- }
- }
- public static void Main()
- {
- string[] points = { "1) Ответ на задание №1", "2) Ответ на задание №2", "3) Выход" };
- int choose = Menu(points);
- Console.WriteLine(choose == -1 ? "Ничего не выбрано" : string.Format("Ответ на задание №{0}", choose + 1));
- Console.ReadLine();
- }
- }
- }
Решение задачи: «Меню в консоли c#»
textual
Листинг программы
- Console/Clear();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д