static Human GetHuman() { try { string name, surname; Console.WriteLine("Write name and surname through space: "); string[] nameArr = Console.ReadLine().Split(' ').Where(x => x != "").ToArray(); (name, surname) = (nameArr[0], nameArr[1]); Console.WriteLine("Write date of birth (3 numbers through space): "); int[] dateArr = Console.ReadLine().Split(' ').Where(x => x != "").Select(x => int.Parse(x)).ToArray(); DateTime dateOfBirth = new DateTime(dateArr[2], dateArr[1], dateArr[0]); Console.WriteLine("Write adress in 1 line:"); string adress = Console.ReadLine(); Console.WriteLine("Type y if person is alive: "); bool isAlive = Console.ReadLine().Trim().ToLower()[0] == 'y'; Console.WriteLine("Type y if person is male: "); bool isMale = Console.ReadLine().Trim().ToLower()[0] == 'y'; Human.Genders gender = isMale ? Human.Genders.Male : Human.Genders.Female; return(new Human(name, surname, dateOfBirth, gender, adress, isAlive)); } catch { return(null); } }
private static void AddHuman(out string name, out string surname, out string patronymic, out int age, out Human.Genders gender) { Console.WriteLine("Name"); name = Console.ReadLine(); Console.WriteLine("Surname"); surname = Console.ReadLine(); Console.WriteLine("Patronymic name"); patronymic = Console.ReadLine(); Console.WriteLine("Age"); while (!int.TryParse(Console.ReadLine(), out age)) { Console.WriteLine("ERROR. Enter one more time."); } Console.WriteLine("Gender"); Enum.TryParse(Console.ReadLine(), out gender); while (!Enum.IsDefined(typeof(Human.Genders), gender)) { Console.WriteLine("ERROR. Enter one more time."); Enum.TryParse(Console.ReadLine(), out gender); } }