Постройть консольное приложение, в котором вводится возраст пользователя - C#
Формулировка задачи:
Создать класс спортсмен (поля фамилия, год рождения, вид спорта, тренер, возраст) и классы взрослый спортсмен (количество побед в международных соревнованиях, категория) и юниор (количество побед, названия спортивной школы). Создать виртуальные методы, вывод информации и поиск по фамилии.
Решение задачи: «Постройть консольное приложение, в котором вводится возраст пользователя»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication7
{
class Sportsman
{
public string Surname { get; set; }
public DateTime DateOfBirth { get; set; }
public string Sport { get; set; }
public string Coach { get; set; }
public int Age { get; private set; }
public Sportsman(string surname, DateTime dateOfBirth, string sport, string coach)
{
Surname = surname;
DateOfBirth = dateOfBirth;
Sport = sport;
Coach = coach;
Age = (DateTime.Now - DateOfBirth).Days / 365;
}
public override string ToString()
{
var sb = new StringBuilder("--SPORTSMAN--\n");
sb.Append(string.Format("Surname: {0}\n", Surname));
sb.Append(string.Format("Date of Birth: {0}\n", DateOfBirth.ToString("d")));
sb.Append(string.Format("Sport: {0}\n", Sport));
sb.Append(string.Format("Coach: {0}\n", Coach));
sb.Append(string.Format("Age: {0}", Age));
return sb.ToString();
}
}
class Adult : Sportsman
{
public int WinCount { get; set; }
public string Category { get; set; }
public Adult(string surname, DateTime dateOfBirth, string sport, string coach, int winCount, string category)
: base(surname, dateOfBirth, sport, coach)
{
WinCount = winCount;
Category = category;
}
public override string ToString()
{
var str = base.ToString();
var sb = new StringBuilder(str).Append("\n");
sb.Append(string.Format("Category: {0}\n", Category));
sb.Append(string.Format("Win Count: {0}", WinCount));
return sb.ToString();
}
}
class Junior : Sportsman
{
public string School { get; set; }
public int WinCount { get; set; }
public Junior(string surname, DateTime dateOfBirth, string sport, string coach, string school, int winCount)
: base(surname, dateOfBirth, sport, coach)
{
School = school;
WinCount = winCount;
}
public override string ToString()
{
var str = base.ToString();
var sb = new StringBuilder(str).Append("\n");
sb.Append(string.Format("School: {0}\n", School));
sb.Append(string.Format("Win Count: {0}", WinCount));
return sb.ToString();
}
}
class Program
{
static void Main(string[] args)
{
var arr = new[]
{
new Sportsman("Test1", new DateTime(1981, 12, 15), "Boxing", "Test2"),
new Adult("Test2", new DateTime(1977, 9, 13), "Football", "Test3", 13, "First"),
new Junior("Test3", new DateTime(1998, 2, 16), "Basketball", "Test4", "Some sports school", 14)
};
Array.ForEach(arr, Console.WriteLine);
Console.ReadKey();
}
}
}