Создайте класс «записная книжка». Предусмотрите возможность работы с произвольным числом записей - C#
Формулировка задачи:
Создайте класс «записная книжка». Предусмотрите возможность работы с произвольным числом записей, поиска записи по какому-либо признаку (например, по фамилии, дате рождения или номеру телефона), добавление или удаление записей, сортировки по фамилии и доступа к записи по номеру. Напишите программу, демонстрирующую работу с этим классом.
Вот код.
помогите сделать простое меню для консольного приложения с вводом и выводом данных классов.
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class record { public int id; public string Name; public string Surname; public DateTime Birthday; public string PhoneNumber; public static bool brake = false; public record(int id, string Name, string Surname, DateTime Birthday, string PhoneNumber) { this.id = id; this.Name = Name; this.Surname = Surname; this.Birthday = Birthday; this.PhoneNumber = PhoneNumber; } } public class Notebook { private List<record> notebookRecords; public List<record> NotebookRecords { get { return notebookRecords; } set { notebookRecords = value; } } public Notebook() { notebookRecords = new List<record>(); } public List<record> SearchRecords(string Name, string Surname, DateTime? Birthday, string PhoneNumber) { List<record> ret = new List<record>(); foreach (record rec in notebookRecords) if (rec.Name == Name || rec.Surname == Surname || rec.Birthday == Birthday || rec.PhoneNumber == PhoneNumber) ret.Add(rec); return ret; } public void AddRecord(int id, string Name, string Surname, DateTime Birthday, string PhoneNumber) { id = Convert.ToInt32(Console.ReadLine()); Name = Convert.ToString(Console.ReadLine()); Birthday = Convert.ToDateTime(Console.ReadLine()); PhoneNumber = Convert.ToString(Console.ReadLine()); record rec = new record(id, Name, Surname, Birthday, PhoneNumber); notebookRecords.Add(rec); Console.WriteLine(Convert.ToString(id),Name,Surname,Birthday,PhoneNumber); } public void DeleteRecords(string Name, string Surname, DateTime Birthday, string PhoneNumber) { List<record> records = SearchRecords(Name, Surname, Birthday, PhoneNumber); foreach (record rec in records) notebookRecords.Remove(rec); } public void SortBySurname() { notebookRecords.OrderBy(x => x.Surname); } private void test() { SearchRecords(null, null, null, null); //вернёт все записи } }
меню такого вида.
1.добавить в книжку.
2. удалить из книжки.
3. поиск по имени или дате или номеру телефона.
4. сортировка по фамилии и вывод книжки.
5. выход из программы.
Решение задачи: «Создайте класс «записная книжка». Предусмотрите возможность работы с произвольным числом записей»
textual
Листинг программы
public class record { public int id; public string Name; public string Surname; public string Birthday; public string PhoneNumber; public static bool brake = false; public record(int id, string Name, string Surname, string Birthday, string PhoneNumber) { this.id = id; this.Name = Name; this.Surname = Surname; this.Birthday = Birthday; this.PhoneNumber = PhoneNumber; } public override string ToString() { return string.Format("id = {0}, name = {1} , surname = {2}, birthday = {3}, phone = {4}", id, Name, Surname, Birthday, PhoneNumber) } } public void printlist(List<record> ret) { foreach (record t in ret) { Console.WriteLine(t); } } public void pritfun() { foreach (record c in notebookRecords) { Console.WriteLine(t); } } public void SortBySurname() { IEnumerable<record> r = notebookRecords.OrderBy(name => name.Surname); foreach (record c in r) { Console.WriteLine(c); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д