Вывести результат работы программы на консоль - 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();
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д