Advertisement
Marshal_Ananas

5.3

Apr 20th, 2019
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.87 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.IO;
  7.  
  8. namespace ConsoleApp5
  9. {
  10.     class Program
  11.     {
  12.         static void Main(string[] args)
  13.         {
  14.  
  15. // Это файл txt для того что бы номера гостиницы записывать
  16. /*
  17. 0000000
  18. 0000000
  19. 0000000
  20. 0000000
  21. */
  22.            
  23.            
  24.            
  25.            
  26.             DateTime localDate = DateTime.Now;
  27.             Console.WriteLine("Сегодня "+ localDate.Day + " число  " + localDate.Month + " месяца");
  28.            
  29.             string[] newFile = File.ReadAllLines("hotel.txt");
  30.             int[,] hotel = new int[newFile.Length, newFile[1].Length];
  31.             string input = "0";
  32.  
  33.             ConvertHotelToint(hotel, newFile);
  34.             Console.WriteLine("Схема свободных комнат по этажам");
  35.             PrintHotel(hotel);
  36.            
  37.            
  38.  
  39.             while(true)
  40.             {
  41.                 Console.WriteLine("Список команд:  \n List - вывести список свободных комнат  \n Book - бронировать номер \n Exit - выйти из программы \n Введите команду ");
  42.                 input = Console.ReadLine();
  43.                 input = input.ToLower();
  44.                 if(input == "list")
  45.                 {
  46.                     CheckRooms(hotel);
  47.                 }
  48.                 else if(input == "book")
  49.                 {
  50.                 Console.WriteLine("Укажите номер  этажа на котором  хотите забранировать комнату: ");
  51.                 int numberFloor = Convert.ToInt32(Console.ReadLine()) - 1;
  52.                 Console.WriteLine("Укажите номер  комнаты которую хотите забронировать: ");
  53.                 int numberRoom = Convert.ToInt32(Console.ReadLine()) - 1;
  54.  
  55.                 if (hotel[numberFloor, numberRoom] == 0)
  56.                 {
  57.                     Console.WriteLine("Укажите на сколько суток хотите  комнату: ");
  58.                     int day = Convert.ToInt32(Console.ReadLine());
  59.                     if(localDate.DayOfYear + day < localDate.DayOfYear)
  60.                     hotel[numberFloor, numberRoom] = localDate.DayOfYear + day;
  61.                 }
  62.                 else
  63.                 {
  64.                     Console.WriteLine("Комната занята и освободиться через  " + (hotel[numberFloor, numberRoom] - localDate.DayOfYear) + " дней. Выберите другую комнату");
  65.                 }
  66.                 Console.WriteLine("Список забраннированных комнат:");
  67.                 PrintHotel(hotel);
  68.                 ConvertHotelToFile(hotel, newFile);
  69.                 File.WriteAllLines("hotel.txt", newFile);
  70.                 }
  71.                 else if (input == "exit")
  72.                 {
  73.                     break;
  74.                 }
  75.  
  76.  
  77.  
  78.  
  79.             }
  80.  
  81.  
  82.             Console.ReadKey();
  83.         }
  84.  
  85.  
  86.         static void ConvertHotelToint(int[,] map, string[] newFile)
  87.         {
  88.             for (int i = 0; i < map.GetLength(0); i++)
  89.                
  90.             for (int j = 0; j < map.GetLength(1); j++)
  91.                 {
  92.                     map[i, j] = int.Parse(newFile[i]);
  93.  
  94.                 }
  95.                    
  96.            
  97.         }
  98.  
  99.        
  100.  
  101.         static void ConvertHotelToFile(int[,] map, string[] newFile)
  102.         {
  103.             for (int i = 0; i < map.GetLength(0); i++)
  104.             {
  105.                 newFile[i] = string.Empty;
  106.                 for (int j = 0; j < map.GetLength(1); j++)
  107.                 {
  108.                     newFile[i] += map[i, j].ToString();
  109.  
  110.                 }
  111.  
  112.             }
  113.  
  114.         }
  115.  
  116.         static void PrintHotel(int[,] hotel)
  117.         {
  118.             for (int i = 0; i < hotel.GetLength(0); i++)
  119.             {
  120.                 for (int j = 0; j < hotel.GetLength(1); j++)
  121.                 {
  122.                     Console.Write(hotel[i, j]);
  123.                 }
  124.                 Console.WriteLine();
  125.             }
  126.         }
  127.  
  128.         static void CheckRooms(int[,] hotel)
  129.         {
  130.             DateTime localDate = DateTime.Now;
  131.             for (int i = 0; i < hotel.GetLength(0); i++)
  132.             {
  133.                 for (int j = 0; j < hotel.GetLength(1); j++)
  134.                 {
  135.                     if(localDate.DayOfYear >= hotel[i, j])
  136.                     {
  137.                         Console.WriteLine("Комната " + (j+1) + " на " + (i+1) + " этаже свободна!");
  138.                         hotel[i, j] = 0;
  139.                     }
  140.                        
  141.                         Console.WriteLine();
  142.                 }
  143.                 Console.WriteLine();
  144.             }
  145.         }
  146.     }
  147. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement