public string Print(params string[] args) { string clinicName = args[1]; Clinic clinic = FindClinic(clinicName); if (args.Length == 3) { int roomNumber = int.Parse(args[2]); return(clinic.PrintRoom(roomNumber)); } return(clinic.PrintAll()); }
public static void Main() { var pets = new List <Pet>(); var clinics = new List <Clinic>(); int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { string[] tokens = Console.ReadLine().Split(); string command = tokens[0]; switch (command) { case "Create": try { string typeOfCreation = tokens[1]; if (typeOfCreation == "Pet") { string name = tokens[2]; int age = int.Parse(tokens[3]); string kind = tokens[4]; Pet pet = new Pet(name, age, kind); pets.Add(pet); } else { string clinicName = tokens[2]; int roomCount = int.Parse(tokens[3]); Clinic clinic = new Clinic(clinicName, roomCount); clinics.Add(clinic); } } catch (ArgumentException ae) { Console.WriteLine(ae.Message); } break; case "Add": string petName = tokens[1]; string clinicNameToAdd = tokens[2]; Pet petToAdd = pets.FirstOrDefault(p => p.Name == petName); Clinic clinicToAdd = clinics.FirstOrDefault(c => c.Name == clinicNameToAdd); Console.WriteLine(clinicToAdd.Add(petToAdd)); break; case "Release": string clinicToReleaseName = tokens[1]; Clinic clinicToRelease = clinics.FirstOrDefault(c => c.Name == clinicToReleaseName); Console.WriteLine(clinicToRelease.Release()); break; case "HasEmptyRooms": string clinicToCheckName = tokens[1]; Clinic clinicToCheck = clinics.FirstOrDefault(c => c.Name == clinicToCheckName); Console.WriteLine(clinicToCheck.HasEmptyRooms); break; case "Print": string clinicToPrintName = tokens[1]; Clinic clinicToPrint = clinics.FirstOrDefault(c => c.Name == clinicToPrintName); if (tokens.Length == 2) { Console.WriteLine(clinicToPrint.PrintAll()); } else { int roomNumberToPrint = int.Parse(tokens[2]); Console.WriteLine(clinicToPrint.Print(roomNumberToPrint)); } break; } } }
static void Main(string[] args) { var pets = new List <Pet>(); var clinics = new List <Clinic>(); int commandCount = int.Parse(Console.ReadLine()); for (int i = 0; i < commandCount; i++) { string[] commandInput = Console.ReadLine().Split(); string cmd = commandInput[0]; switch (cmd) { case "Create": string typeOfCreation = commandInput[1]; if (typeOfCreation == "Pet") { int age = int.Parse(commandInput[3]); Pet pett = new Pet(commandInput[2], age, commandInput[4]); pets.Add(pett); } else { try { int roomCount = int.Parse(commandInput[3]); var clinic = new Clinic(commandInput[2], roomCount); clinics.Add(clinic); } catch (ArgumentException e) { Console.WriteLine(e.Message); } } break; case "Add": Pet pet = pets.FirstOrDefault(p => p.Name == commandInput[1]); Clinic clinicToAdd = clinics.FirstOrDefault(c => c.Name == commandInput[2]); Console.WriteLine(clinicToAdd.Add(pet)); break; case "Release": Clinic clinicToRelease = clinics.FirstOrDefault(c => c.Name == commandInput[1]); Console.WriteLine(clinicToRelease.Release()); break; case "HasEmptyRooms": Clinic clinicToCheck = clinics.FirstOrDefault(c => c.Name == commandInput[1]); Console.WriteLine(clinicToCheck.HasEmptyRooms); break; case "Print": Clinic clinicToPrint = clinics.FirstOrDefault(c => c.Name == commandInput[1]); if (commandInput.Length == 3) { int roomNumber = int.Parse(commandInput[2]); Console.WriteLine(clinicToPrint.Print(roomNumber)); } else { Console.WriteLine(clinicToPrint.PrintAll()); } break; default: break; } } }
static void Main(string[] args) { int numOfCommands = int.Parse(Console.ReadLine()); for (int i = 0; i < numOfCommands; i++) { string[] cmdArgs = Console.ReadLine().Split(); string command = cmdArgs[0]; Clinic currentClinic = null; if (command == "Create") { command += $" {cmdArgs[1]}"; } switch (command) { case "Create Pet": Pet pet = new Pet(cmdArgs[2], int.Parse(cmdArgs[3]), cmdArgs[4]); allPets.Add(pet); break; case "Create Clinic": try { Clinic clinic = new Clinic(cmdArgs[2], int.Parse(cmdArgs[3])); allClinics.Add(clinic); } catch (InvalidOperationException e) { Console.WriteLine(e.Message); } break; case "Add": string petName = cmdArgs[1]; string clinicName = cmdArgs[2]; try { Pet petToAdd = allPets.FirstOrDefault(p => p.Name == petName); if (petToAdd == null) { throw new InvalidOperationException("Invalid Operation!"); } currentClinic = GetClinic(clinicName); Console.WriteLine(currentClinic.AddPet(petToAdd)); } catch (InvalidOperationException e) { Console.WriteLine(e.Message); } break; case "Release": currentClinic = GetClinic(cmdArgs[1]); Console.WriteLine(currentClinic.ReleasePet()); break; case "HasEmptyRooms": currentClinic = GetClinic(cmdArgs[1]); Console.WriteLine(currentClinic.HasEmptyRooms()); break; case "Print": currentClinic = GetClinic(cmdArgs[1]); if (cmdArgs.Length == 2) { currentClinic.PrintAll(); } else { currentClinic.Print(int.Parse(cmdArgs[2])); } break; } } }