コード例 #1
0
        private void DeleteCar(Parking parking)
        {
            if (parking.NumberOfCars == 0)
            {
                Console.WriteLine("Все места на парковке свободны, вы не можете удалить машину.");
                Console.ReadKey();
                Menu(parking);
            }

            Console.WriteLine("Введите номер освобождаемого места");
            int  placeNumber = 0;
            bool valid       = Int32.TryParse(Console.ReadLine(), out placeNumber);

            if (valid)
            {
                ParkingPlace place = null;
                foreach (ParkingPlace parkingPlace in parking.ParkingPlaces)
                {
                    if (parkingPlace.Id == placeNumber)
                    {
                        place = parkingPlace;
                    }
                }
                if (place != null)
                {
                    if (place.CarInPlace != null)
                    {
                        place.CarInPlace = null;
                        Console.WriteLine($"Место {place.Id} освобождено");
                        Console.ReadKey();
                        Menu(parking);
                    }
                    else
                    {
                        Console.WriteLine("Это место уже свободно!");
                        DeleteCar(parking);
                    }
                }
                else
                {
                    Console.WriteLine("Такого места нет!");
                    DeleteCar(parking);
                }
            }
            else
            {
                Console.WriteLine("Вы ввели не число!");
                DeleteCar(parking);
            }
        }
コード例 #2
0
        private void AddNewCar(Parking parking)
        {
            Console.WriteLine("Введите название пребывающей машины");
            string carName = Console.ReadLine();

            if (carName.Length == 0)
            {
                Console.WriteLine("Введена пустая строка!");
                AddNewCar(parking);
            }

            Console.WriteLine("Введите номер пребывающей машины");
            string carNumber = Console.ReadLine();

            if (carNumber.Length == 0)
            {
                Console.WriteLine("Введена пустая строка!");
                AddNewCar(parking);
            }

            foreach (ParkingPlace place in parking.ParkingPlaces)
            {
                if (place.CarInPlace != null)
                {
                    if (place.CarInPlace.Number == carNumber)
                    {
                        Console.WriteLine("Машина с таким номером уже находится на вашей парковке!");
                        AddNewCar(parking);
                    }
                }
            }

            Console.WriteLine("Введите номер места для этой машины");
            int  placeNumber = 0;
            bool valid       = Int32.TryParse(Console.ReadLine(), out placeNumber);

            if (valid)
            {
                ParkingPlace place = null;
                foreach (ParkingPlace parkingPlace in parking.ParkingPlaces)
                {
                    if (parkingPlace.Id == placeNumber)
                    {
                        place = parkingPlace;
                    }
                }
                if (place != null)
                {
                    if (place.CarInPlace == null)
                    {
                        place.CarInPlace = new Car(carName, carNumber);
                        parking.NumberOfCars++;
                        Console.WriteLine($"Автомобиль {carName} занял свое место - {place.Id}.");
                        Console.ReadKey();
                        Menu(parking);
                    }
                    else
                    {
                        Console.WriteLine("Место уже занято!");
                        AddNewCar(parking);
                    }
                }
                else
                {
                    Console.WriteLine("Такого места нет!");
                    AddNewCar(parking);
                }
            }
            else
            {
                Console.WriteLine("Вы ввели не число!");
                AddNewCar(parking);
            }
        }