Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace MENU
- {
- class Program
- {
- static string[] menu = { "Первое", "Второе", "Третье", "Выход" };
- static string[] menu1 = { "Борщ", "Венгерский суп", "Солянка", "Чек", "Назад", "Выход" };
- static string[] menu2 = { "Паста", "Плов", "Котлеты", "Чек", "Назад", "Выход" }; // а нужно чтобы там же оставалось
- static string[] menu3 = { "Мюсли", "Шарлотка", "Мороженое", "Чек", "Назад", "Выход" };
- public int Summ = 0;
- public int summ1, summ2, summ3;
- static void Menu1()
- {
- Console.Clear();
- PrintMenu(menu1, out int active);
- FirstMenuBeforeMenu(active);
- }
- static void Menu2()
- {
- Console.Clear();
- PrintMenu(menu2, out int active);
- SecondMenuBeforeMenu(active);
- }
- static void Menu3()
- {
- Console.Clear();
- PrintMenu(menu3, out int active);
- ThirdMenuBeforeMenu(active);
- }
- static void Check()
- {
- Console.Clear();
- Console.WriteLine("Заказ оформлен!");
- }
- static int Price(int Summ, int summ1, int summ2, int summ3)
- {
- Summ = summ1 + summ2 + summ3;
- return Summ;
- }
- //static void BeforeCheck()
- //{
- // string[] menu4 = { "Назад", "Выход" };
- // PrintMenu(menu4, out int active);
- // //PBeforeCheck(active);
- //}
- //static void PBeforeCheck(int active)
- //{
- // //if (active == 0)
- // // Back();
- // //else if (active == 1)
- // Environment.Exit(0);
- //}
- static void Back()
- {
- Console.Clear();
- PrintMenu(menu, out int active);
- Menu(active);
- }
- static void Menu(int active) //МЕТОД ДЛЯ 1-ГО МЕНЮ//
- {
- switch (active)
- {
- case 0:
- Menu1();
- break;
- case 1:
- Menu2();
- break;
- case 2:
- Menu3();
- break;
- case 3:
- Environment.Exit(0);
- break;
- }
- }
- static void FirstMenuBeforeMenu(int active)//МЕТОД ДЛЯ ВТОРОГО МЕНЮ//
- {
- int[] price1 = new int[3] { 10, 20, 30 };
- int summ1 = price1[active]; ;
- switch (active)
- {
- case 0:
- Console.WriteLine("Вы выбрали: " + menu1[active]);
- Console.WriteLine("На сумму: " + price1[active]);
- Console.WriteLine("Summ = " + summ1);
- break;
- case 1:
- Console.WriteLine("Вы выбрали: " + menu1[active]);
- Console.WriteLine("На сумму: " + price1[active]);
- Console.WriteLine("Summ = " + summ1);
- break;
- case 2:
- Console.WriteLine("Вы выбрали: " + menu1[active]);
- Console.WriteLine("На сумму: " + price1[active]);
- Console.WriteLine("Summ = " + summ1);
- break;
- case 3:
- Check();
- break;
- case 4:
- Back();
- break;
- case 5:
- Environment.Exit(0);
- break;
- }
- }
- static void SecondMenuBeforeMenu(int active)
- {
- int[] price2 = new int[3] { 40, 50, 60 };
- switch (active)
- {
- case 0:
- Console.WriteLine("Вы выбрали: {0}", menu2[active]);
- Console.WriteLine("На сумму: {0}", price2[active]);
- break;
- case 1:
- Console.WriteLine("Вы выбрали: {0}", menu2[active]);
- Console.WriteLine("На сумму: {0}", price2[active]);
- break;
- case 2:
- Console.WriteLine("Вы выбрали: {0}", menu2[active]);
- Console.WriteLine("На сумму: {0}", price2[active]);
- break;
- case 3:
- Check();
- break;
- case 4:
- Back();
- break;
- case 5:
- Environment.Exit(0);
- break;
- }
- }
- static void ThirdMenuBeforeMenu(int active)
- {
- int[] price3 = new int[3] { 70, 80, 90 };
- switch (active)
- {
- case 0:
- Console.WriteLine("Вы выбрали: {0}", menu3[active]);
- Console.WriteLine("На сумму: {0}", price3[active]);
- break;
- case 1:
- Console.WriteLine("Вы выбрали: {0}", menu3[active]);
- Console.WriteLine("На сумму: {0}", price3[active]);
- break;
- case 2:
- Console.WriteLine("Вы выбрали: {0}", menu3[active]);
- Console.WriteLine("На сумму: {0}", price3[active]);
- break;
- case 3:
- Check();
- break;
- case 4:
- Back();
- break;
- case 5:
- Environment.Exit(0);
- break;
- }
- }
- static int PrintMenu(string[] menuactive, out int active)
- {
- active = 0;
- ConsoleKeyInfo key;
- do
- {
- Console.Clear();
- for (int i = 0; i < menuactive.Length; i++)
- {
- if (active == i)
- {
- Console.BackgroundColor = ConsoleColor.White;
- Console.ForegroundColor = ConsoleColor.Black;
- Console.WriteLine(menuactive[i]);
- Console.BackgroundColor = ConsoleColor.Black;
- Console.ForegroundColor = ConsoleColor.White;
- }
- else
- Console.WriteLine(menuactive[i]);
- }
- key = Console.ReadKey();
- if (key.Key == ConsoleKey.UpArrow && active != 0) active--;
- if (key.Key == ConsoleKey.DownArrow && active != menuactive.Length - 1) active++;
- }
- while (key.Key != ConsoleKey.Enter);
- return active;
- }
- static void Main(string[] args)
- {
- while (true)
- {
- PrintMenu(menu, out int active);
- Menu(active);
- Console.ReadKey();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement