public readonly string Name;
public readonly DateTime Birthday;
public Human(string name, DateTime birthday)
public double AgeInDays => (DateTime.Today - Birthday).TotalDays;
public double Age => AgeInDays / 365.2425;
public virtual void TellAboutYourself()
Console.WriteLine($"Hi! I'm {Age:0.00} years ({AgeInDays} days) old {Name}.");
public void CompareTo(Human anotherHuman)
Console.Write($"I'm {(Age > anotherHuman.Age ? "older" : "younger")}");
Console.WriteLine($" than {anotherHuman.Name} by {Math.Abs(Age - anotherHuman.Age):0.0} years.");
if (DateTime.Today.Day == Birthday.Day && DateTime.Today.Month == Birthday.Month)
Console.WriteLine($"{Name} birthday is Today!");
Console.WriteLine($"{Name} birthday is not Today!");
public class Employee : Human
private bool IamAtWork = false;
private bool StayHome = true;
public Employee(string name, DateTime birthday) : base(name, birthday) { }
if (DateTime.Today.DayOfWeek == DayOfWeek.Sunday)
Console.WriteLine("No! Today is my Day Off!");
Console.WriteLine("What??!! I'm already at Work!! ");
Console.WriteLine("Ok! I need to go, because I'm just a program.");
if (DateTime.Today.DayOfWeek == DayOfWeek.Friday)
Console.WriteLine("Today I will Stay at Home!");
public void CoffeeBreak(int minutes)
Console.WriteLine($"Take a {minutes} minutes coffee break");
public void CoffeeBreak(string minutes)
Console.WriteLine($"Take a {minutes} minutes coffee break");
public class Male : Employee
public Male(string name, DateTime birthday) : base(name, birthday) { }
public override void TellAboutYourself()
Console.WriteLine($"Hi! I'm {Age:0.00} years ({AgeInDays} days) old man. My name is {Name}.");
public class Female : Employee
public Female(string name, DateTime birthday) : base(name, birthday) { }
public override void TellAboutYourself()
Console.WriteLine($"Hi! I'm {Age:0.00} years ({AgeInDays} days) old woman. My name is {Name}.");
public static void Main()
Human Savelijs = new Male("Savelijs", new DateTime(2003, 09, 23));
Male RaimondsPauls = new Male("Raimonds Pauls", new DateTime(1936, 01, 12));
Male EgilsLevits = new Male("Egils Levits", new DateTime(1955, 06, 30));
Female Andra = new Female("Andra Levīte", new DateTime(1976, 07, 23));
Andra.TellAboutYourself();
Andra.CompareTo(EgilsLevits);
EgilsLevits.TellAboutYourself();
EgilsLevits.CompareTo(Andra);
EgilsLevits.StayAtHome();
EgilsLevits.CoffeeBreak(10);
EgilsLevits.StayAtHome();