Организация методов пользовательских классов - C#
Формулировка задачи:
Описать структуру с именем ZNAK, содержащую следующие поля:
- фамилия, имя;
- знак Зодиака;
- дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия:
- ввод с клавиатуры данных в массив, состоящий из восьми элементов
типа ZNAK (записи должны быть упорядочены по знакам Зодиака);
- вывод на экран информации о людях, родившихся в месяц, значение
которого введено с клавиатуры (если таких нет, вывести
соответствующее сообщение).
Решение задачи: «Организация методов пользовательских классов»
textual
Листинг программы
using System; using System.Linq; namespace ConsoleApplication { struct ZNAK { string surname, name; public string znak; public int[] birthday; public ZNAK(string name, string surname, string znak, int day, int month, int year) { this.name = name; this.surname = surname; this.znak = znak; birthday = new int[] { day, month, year }; } public override string ToString() { return String.Format("Имя: {0}\nФамилия: {1}\nЗнак: {2}\nДата рождения: {3}.{4}.{5}", name, surname, znak, birthday[0], birthday[1], birthday[2]); } } class Program { static void Main(string[] args) { ZNAK[] znaki = new ZNAK[8]; string name, surname, znak; int day, month, year; for (int i = 0; i < znaki.Length; i++ ) { Console.Write("Введите имя: "); name = Console.ReadLine(); Console.Write("Введите фамилию: "); surname = Console.ReadLine(); Console.Write("Введите знак: "); znak = Console.ReadLine(); Console.Write("Введите день рождения: "); day = Int32.Parse(Console.ReadLine()); Console.Write("Введите месяц рождения: "); month = Int32.Parse(Console.ReadLine()); Console.Write("Введите год рождения: "); year = Int32.Parse(Console.ReadLine()); znaki[i] = new ZNAK(name, surname, znak, day, month, year); } znaki = znaki.OrderBy(n => n.znak).ToArray(); for (int i = 0; i < znaki.Length; i++) Console.WriteLine(znaki[i].znak); Console.Write("Введите месяц для поиска: "); int targetMonth = Int32.Parse(Console.ReadLine()); bool exist = false; for(int i=0; i<znaki.Length; i++) { if (znaki[i].birthday[1] == targetMonth) { Console.WriteLine(znaki[i].ToString() + "\n"); exist = true; } } if (!exist) Console.WriteLine("Записей нет"); Console.ReadKey(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д