public override void CheckOut(int room) { base.CheckOut(room); if (Hotel.HotelGuests.Count == 0) { Console.WriteLine("No guests, please, check in"); } else if (room > 3003 || room < 1001) { Console.WriteLine("Room doesn`t exists"); } else { bool isMovedOut = false; for (var i = 0; i < Hotel.HotelGuests.Count; i++) { if (Hotel.HotelGuests[i].Room == room) { Hotel.HotelGuests.Remove(Hotel.HotelGuests[i]); isMovedOut = true; } } if (isMovedOut) { if (CheckTypeWithNumber(room) == 1) { for (var i = 0; i < Hotel.Singles.Capacity; i++) { if (Hotel.Singles[i].Number != room) { continue; } Hotel.Singles[i].IsClean = false; Hotel.Singles[i].IsOccupied = false; } } else if (CheckTypeWithNumber(room) == 3) { for (var i = 0; i < Hotel.Lux.Capacity; i++) { if (Hotel.Lux[i].Number != room) { continue; } Hotel.Lux[i].IsClean = false; Hotel.Lux[i].IsOccupied = false; var cleaning = new Cleaning(); cleaning.CarryBaggage(Hotel.Lux[i].Number); } } else if (CheckTypeWithNumber(room) == 2) { for (var i = 0; i < Hotel.Doubles.Capacity; i++) { if (Hotel.Doubles[i].Number != room) { continue; } Hotel.Doubles[i].IsClean = false; Hotel.Doubles[i].IsOccupied = false; } } Console.WriteLine("You moved out successfully"); } else { Console.WriteLine("No guests in this room"); } } }