Question: using System; using System.Globalization; class Contestant { public string Name { get; set; } public char TalentCode { get; set; } public string TalentDescription {

using System;
using System.Globalization;
class Contestant
{
public string Name { get; set; }
public char TalentCode { get; set; }
public string TalentDescription { get; set; }
public double Fee { get; set; }
// Talent code descriptions
public static string GetTalentDescription(char code)
{
switch (code)
{
case 'S': return "Singing";
case 'D': return "Dancing";
case 'M': return "Muusing System;
using System.Globalization;
class Contestant
{
public string Name { get; set; }
public char TalentCode { get; set; }
public string TalentDescription { get; set; }
public double Fee { get; set; }
// Talent code descriptions
public static string GetTalentDescription(char code)
{
switch (code)
{
case 'S': return "Singing";
case 'D': return "Dancing";
case 'M': return "Musical instrument";
case 'O': return "Other";
default: return "Unknown"; // If unknown talent code
}
}
// Constructor for initializing fields
public Contestant()
{
TalentDescription = "Unknown"; // Default value for invalid talent codes
}
public virtual void SetName(string name)
{
Name = name;
}
public virtual void SetTalentCode(char code)
{
TalentCode = code;
TalentDescription = GetTalentDescription(code); // Set the correct description
}
public virtual void SetFee(double fee)
{
Fee = fee;
}
public virtual string ToString()
{
return $"{Name} Talent: {TalentCode}{TalentDescription} Fee {Fee.ToString("C", CultureInfo.GetCultureInfo("en-US"))}";
}
}
class ChildContestant : Contestant
{
public ChildContestant()
{
Fee =15.00; // Default fee for child contestants
}
public override string ToString()
{
return $"Child Contestant {base.ToString()}";
}
}
class TeenContestant : Contestant
{
public TeenContestant()
{
Fee =20.00; // Default fee for teen contestants
}
public override void SetTalentCode(char code)
{
base.SetTalentCode(code);
// Override TalentDescription to always be "Unknown"
TalentDescription = "Unknown";
}
public override string ToString()
{
return $"Teen Contestant {Name} Talent: {TalentCode} Unknown Fee {Fee.ToString("C", CultureInfo.GetCultureInfo("en-US"))}";
}
}
class AdultContestant : Contestant
{
public AdultContestant()
{
Fee =30.00; // Default fee for adult contestants
}
public override void SetTalentCode(char code)
{
base.SetTalentCode(code);
// Override TalentDescription to always be "Unknown"
TalentDescription = "Unknown";
}
public override string ToString()
{
return $"Adult Contestant {Name} Talent: {TalentCode} Unknown Fee {Fee.ToString("C", CultureInfo.GetCultureInfo("en-US"))}";
}
}
class Program
{
static void Main()
{
// Display the talent codes and descriptions
Console.WriteLine("Talent codes are:");
Console.WriteLine("S Singing");
Console.WriteLine("D Dancing");
Console.WriteLine("M Musical instrument");
Console.WriteLine("O Other");
// Display the expected revenue
double revenue =65.00;
Console.WriteLine($"Revenue expected this year is {revenue.ToString("C", CultureInfo.GetCultureInfo("en-US"))}");
// Create contestants and display their details
ChildContestant child = new ChildContestant();
child.SetName("Joe S");
child.SetTalentCode('S'); // Set talent code
Console.WriteLine(child.ToString());
TeenContestant teen = new TeenContestant();
teen.SetName("Ellen");
teen.SetTalentCode('M'); // Valid code for TeenContestant
Console.WriteLine(teen.ToString());
AdultContestant adult = new AdultContestant();
adult.SetName("Kelly");
adult.SetTalentCode('D'); // Valid talent code
Console.WriteLine(adult.ToString());
}
}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!