Нужна сортировка по дате рождения, а как ее сделать не знаю - C#
Формулировка задачи:
Вот все что смог написать. Помогите сделать сортировку по дате рождения.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Kyrsovaiya { public class person //базовый класс содержащий фамилию и инициалы { public string SecondName;//переменная содержащая фамилию public string Inic;//переменная содержащая инициалы } public class sing : person//класс на основе базового содержащий знак зодиака, символ года, доту рождения { public String ZnakZodiaka;//переменная содержащая знак зодиака public String SimvolGoda;//переменная содержащая символ года public String DataRozhdeniya;//переменная содержащая дату рождения public sing(String SecondName, String Inic, String ZnakZodiaka, String SimvolGoda, String DataRozhdeniya)//конструктор с параметрами { this.SecondName = SecondName; this.Inic = Inic; this.ZnakZodiaka = ZnakZodiaka; this.SimvolGoda = SimvolGoda; this.DataRozhdeniya = DataRozhdeniya; } } class Programm { static void Main(string[] args) { Random rand = new Random();//случайное заполнение sing[] s = new sing[15];//создаем массив из 10 элементов типа sing String[] sn = {"Осипов","Дроздов","Сидоров","Хомяков","Иванова","Петров","Дремин","Калинина","Кравченко","Бутузов","Ефрюшин","Фомина","Авдеев","Титов","Хряков" };//массив фамилий String[] s1 = { "М.И", "М.Ю", "Е.Ф", "В.И", "М.О", "В.В", "Д.А", "И.В", "Р.В", "С.Б","В.Н" };//массив инициалов String[] zz = { "Овен","Телец","Близнецы","Рак","Лев","Дева","Весы","Скорпион","Стрелец","Козерог","Водолей","Рыба"};//массив знаков зодиака String[] sg = { "Крыса","Бык","Тигр","Кролик","Дракон","Змея","Лошадь","Овца","Обезьяна","Петух","Собака","Свинья"};//массив символов года String[] dr = { "10.12.1975", "9.10.1994", "9.09.2000", "29.04.1992", "30.12.1986", "1.01.2001", "2.09.1987" };//массив даты рождения Console.WriteLine("Вывод упорядоченный по дате рождения");//вывод фразы на экран Console.WriteLine(); for (int i = 0; i < s.Length; i++)//цикл { int v = rand.Next(0, 12); int e = rand.Next(0, 11); int c = rand.Next(0,12); int b = rand.Next(0,7); s[i] = new sing(sn[i], s1[e], zz[c], sg[v], dr[b]); } for (int i = 0; i < s.Length; i++) { for (int l = 0; l < dr.Length; l++) { Console.Write(dr[l] + " "); } Console.WriteLine(s[i].SecondName + " " + s[i].Inic + "\nДата рождения: " + s[i].DataRozhdeniya + "\nЗнак зодиака: " + s[i].ZnakZodiaka + "\nСимвол года:" + s[i].SimvolGoda);//вывод на экран результата Console.WriteLine(); } Console.WriteLine(); Console.WriteLine("Введите знак зодиака");//вывод фразы на экран Console.WriteLine("для поиска:");//вывод фразы на экран Console.WriteLine(); string znak = Console.ReadLine();//переменная с названием дисциплины которую необходимо найти Console.WriteLine(); bool konec = true;//создаем переменную логического типа и присваиваем значение "true" for (int i = 0; i < s.Length; i++)//цикл { if (znak == s[i].ZnakZodiaka)//проверяем условие и выводим фамилию, символ года, дату рождения на экран { Console.WriteLine(); Console.WriteLine(s[i].SecondName + " " + s[i].Inic + "\nСимвол года: " + s[i].SimvolGoda + "\nДата рождения: " + s[i].DataRozhdeniya);//вывод на экран konec = false; } } if (konec) Console.WriteLine("\nТакого знака нет!"); konec = false;//если человека с таким знаком зодиака нет то выводим сообщение. Console.ReadLine(); } } }
Решение задачи: «Нужна сортировка по дате рождения, а как ее сделать не знаю»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Collections; namespace Kyrsovaiya { public class person //базовый класс содержащий фамилию и инициалы { public string SecondName;//переменная содержащая фамилию public string Inic;//переменная содержащая инициалы } public class sing : person,IComparable//класс на основе базового содержащий знак зодиака, символ года, доту рождения { public String ZnakZodiaka;//переменная содержащая знак зодиака public String SimvolGoda;//переменная содержащая символ года public String DataRozhdeniya;//переменная содержащая дату рождения public sing(String SecondName, String Inic, String ZnakZodiaka, String SimvolGoda, String DataRozhdeniya)//конструктор с параметрами { this.SecondName = SecondName; this.Inic = Inic; this.ZnakZodiaka = ZnakZodiaka; this.SimvolGoda = SimvolGoda; this.DataRozhdeniya = DataRozhdeniya; } //реализуем интерфейс public int CompareTo(object o) { sing temp = (sing)o; return this.DataRozhdeniya.CompareTo(temp.DataRozhdeniya); } } class Programm { static void Main(string[] args) { List<sing> persons = new List<sing>(); persons.Add(new sing("q", "q", "q", "q", "123")); persons.Add(new sing("q", "q", "q", "q", "023")); persons.Add(new sing("q", "q", "q", "q", "003")); persons.Sort(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д