Вывести результат работы программы на консоль - C#
Формулировка задачи:
Подскажите как результат вывести на консоль ?
Свойство типа Paper ( только с методом get), которое возвращает ссылку на публикацию с самой поздней датой выхода; если список публикаций пустой, свойство возвращает значение null.
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Конструктор_1 { class Program { static void Main(string[] args) { Console.WriteLine(); ResearchTeam team = new ResearchTeam(); ResearchTeam Ssilka = new ResearchTeam(); Paper[] papers = new Paper[2]; papers[0] = new Paper("pub_4", new DateTime(1887, 6, 1)); papers[1] = new Paper("pub_5", new DateTime(1889, 8, 21)); team.AddPapers(papers); foreach (Paper paper in team.list) { Console.WriteLine(paper.Publication); Console.WriteLine(paper.Time.ToShortDateString()); } Console.WriteLine(team.ToString()); Console.WriteLine(Ssilka.Paper); // ? 1 Console.ReadKey(); } } class Paper { public string Publication { get; private set; } // свойство типа string , в котором хранится название публикации public string Author { get; private set; } // свойство типа Person для автора публикации public DateTime PublishDate { get; private set; }DateTime Data { get; set; } // свойство типа DateTime c датой публикации //конструктор c параметрами типа string, Person, DateTime для инициализации всех свойств класса; public Paper(string pub, string author, DateTime date) { Publication = pub; Author = author; PublishDate = date; } // конструктор без параметров, инициализирующий все свойства класса некоторыми значениями по умолчанию public Paper() : this("WarandWorld", "Lolstoy", new DateTime(1889, 7, 1)) { } public Paper(string publication, DateTime time) { Publication = publication; Time = time; } public string publication; public DateTime Time; } //Определить тип TimeFrame перечисление(enum) со значениями Year, TwoYears, Long. enum TimeFrame { Year, TwoYears, Long } class ResearchTeam : List<Paper> { // закрытое поле типа Paper*+, в котором хранится список публикаций private List<Paper> Papers = new List<Paper>() { new Paper("pub_1", new DateTime(1881, 6, 2)), new Paper("pub_2", new DateTime(1883, 6, 2)), new Paper("pub_3", new DateTime(1885, 6, 2)) }; //, // В классе ResearchTeam определить конструкторы : // Конструктор c параметрами типа string, string, int, TimeFrame для инициализации соответствующих полей класса public ResearchTeam(string theme, string org, string regNum) { _theme = theme; _organization = org; _registryNumber = regNum; } //Конструктор без параметров, инициализирующий поля класса значениями по умолчанию public ResearchTeam() : this("Ecology", "Colos", "1924714927") { } //В классе ResearchTeam определить свойства c методами get и set //Cвойство типа string для доступа к полю с названием темы исследова-ний private string _theme; /// <summary> /// Тема исследований /// </summary> public string Theme { get { return _theme; } } //Cвойство типа string для доступа к полю с названием организации private string _organization; /// <summary> /// Название организации /// </summary> public string Organization { get { return _organization; } } //Cвойство типа int для доступа к полю с номером регистрации private string _registryNumber; /// <summary> /// Регистрационный номер организации /// </summary> public string RegistryNumber { get { return _registryNumber; } } //Cвойство типа TimeFrame для доступа к полю с продолжительностью ис-следований private TimeFrame _last; /// <summary> /// Продолжительность исследований /// </summary> public TimeFrame Last { get { return _last; } } /// <summary> /// Cсылкa на публикацию с самой поздней датой выхода. /// <para>Eсли список публикаций пустой — возвращает null</para> /// </summary> public Paper Paper // ? 2 { get { return Count == 0 ? null : this.OrderByDescending(p => p.PublishDate).FirstOrDefault(); } } /// <summary> /// Возвращает true, если продолжительность исследований совпадает с указанной /// </summary> /// <param name="frame">Указанная продолжительность исследований</param> public bool this[TimeFrame frame] { get { return frame == Last; } } //Cвойство типа Paper[] для доступа к полю со списком публикаций по те-ме исследований public List<Paper> list { get { return Papers; } set { Papers = value; } } public void AddPapers(Paper[] papers) { Papers.AddRange(papers); } public override string ToString() { return string.Join(",", Papers.Select(p => p.Publication)); } } }
Решение задачи: «Вывести результат работы программы на консоль»
textual
Листинг программы
public Paper Paper // ? 2 { get { return Count == 0 ? null : this.OrderByDescending(p => p.PublishDate).FirstOrDefault(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д