Advertisement
Benjail

3.1

Aug 28th, 2019
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.45 KB | None | 0 0
  1. using System;
  2. // Была добавлена функция снятия бронирования мест со столов
  3. namespace IMJunior
  4. {
  5.     class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             bool isOpen = true;
  10.             int[] tables = { 4, 6, 8, 9, 7, 1, 3, 5 };
  11.             int userTable;
  12.             int userPlace;
  13.             const int maxseats = 10; //зададим максимальную вместимость каждого стола в кафе
  14.             while (isOpen)
  15.             {
  16.                 Console.WriteLine("Программа брони столов.\nКаждый стол вмещает максимум 10 мест");
  17.                 for (int i = 0; i < tables.Length; i++)
  18.                 {
  19.                     Console.WriteLine("Стол - " + (i + 1) + ". Свободно мест - " + tables[i]);
  20.                 }
  21.                 Console.WriteLine("\nДоступные команды:\n1 - Забронировать стол \n2 - Снять бронь\n3 - Выход");
  22.                 Console.Write("\nВведите номер команды:");
  23.  
  24.                 switch (Convert.ToInt32(Console.ReadLine()))
  25.                 {
  26.                     case 1:
  27.                         Console.Write("Введите номер стола:");
  28.                         userTable = Convert.ToInt32(Console.ReadLine()) - 1;
  29.  
  30.                         if (userTable < 0 || userTable >= tables.Length)
  31.                         {
  32.                             Console.WriteLine("Такого стола нет.");
  33.                             break;
  34.                         }
  35.                         Console.Write("Введите кол-во мест:");
  36.                         userPlace = Convert.ToInt32(Console.ReadLine());
  37.  
  38.                         if (userPlace > tables[userTable])
  39.                         {
  40.                             Console.WriteLine("Недостаточно мест.");
  41.                             break;
  42.                         }
  43.                         else if (userPlace < 0)
  44.                         {
  45.                             Console.WriteLine("Ну, вы не можете прибавить мест.");
  46.                         }
  47.                         else if (userPlace == 0)
  48.                         {
  49.                             Console.WriteLine("Ну, ноль мест вам не надо.");
  50.                             break;
  51.                         }
  52.                         tables[userTable] -= userPlace;
  53.                         break;
  54.                     case 2: //Добавлена функция отмены брони
  55.                         Console.Write("Введите номер стола:");
  56.                         userTable = Convert.ToInt32(Console.ReadLine()) - 1;
  57.                         if (userTable < 0 || userTable >= tables.Length)
  58.                         {
  59.                             Console.WriteLine("Такого стола нет.");
  60.                             break;
  61.                         }
  62.                         Console.Write("Введите кол-во мест:");
  63.                         userPlace = Convert.ToInt32(Console.ReadLine());
  64.                        
  65.                        if (userPlace < 0)
  66.                         {
  67.                             Console.WriteLine("Ну, вы не можете убавить мест.");
  68.                         }
  69.                        if (userPlace == 0)
  70.                         {
  71.                             Console.WriteLine("Ну, ноль мест вам не надо.");
  72.                             break;
  73.                         }
  74.                         if((userPlace+tables[userTable])> maxseats)//условие для проверки, не больше ли пользователь хочет освободить мест, чем это вообще возможно
  75.                             {
  76.                             Console.WriteLine("Вы можете освободить максимум "+ (maxseats-tables[userTable]) + " мест");
  77.                             userPlace = (maxseats - tables[userTable]);
  78.                         }
  79.                         tables[userTable] += userPlace;
  80.                         break;
  81.                     case 3:
  82.                         isOpen = false;
  83.                         break;
  84.                 }
  85.                 Console.ReadKey();
  86.                 Console.Clear();
  87.             }
  88.         }
  89.     }
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement