Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

In Chapter 7, you modified the GreenvilleRevenue program to include a number of methods. Now modify every data entry statement to use a TryParse() method

In Chapter 7, you modified the GreenvilleRevenue program to include a number of methods. Now modify every data entry statement to use a TryParse() method to ensure that each piece of data is the correct type. Any invalid user entries should generate an appropriate message, and the user should be required to reenter the data.

using System; using static System.Console; class GreenvilleRevenue { static void Main(string[] args) { const int fee = 25; int lastYearsContestants; int thisYearsContestants; const int LOW = 0; const int HIGH = 30; int other = 0; int dancer = 0; int musician = 0; int singer = 0;

WriteLine("**********************************"); WriteLine("* The stars shine in Greenville. *"); WriteLine("**********************************"); WriteLine("");

lastYearsContestants = getContestantsNum(message, LOW, HIGH);

string[] contestant = new string[thisYearsContestants]; string[] talent = new string[thisYearsContestants]; getContestantsInfo(contestant, talent); for (int x = 0; x < talent.Length; ++x) { if (talent[x] == "O") { ++other; } else if (talent[x] == "S") { ++singer; } else if (talent[x] == "D") { ++dancer; } else if (talent[x] == "M") { ++musician; } } Clear(); WriteLine("Currently signed up, there are.."); WriteLine("{0} dancers", dancer); WriteLine("{0} singers", singer); WriteLine("{0} musicians", musician); WriteLine("{0} everything else!", other); contestantByTalent(contestant, talent);

Clear(); contestantInfo(thisYearsContestants, lastYearsContestants, fee); }

static int getContestantsNum(string message, int LOW, int HIGH) { WriteLine("Please enter the number of contestants for last year.>>"); string input = ReadLine(); int contestantsNum = Convert.ToInt32(input);

while (contestantsNum < LOW || contestantsNum > HIGH) { WriteLine("Valid numbers are 0 through 30, Please try again.>>"); contestantsNum = Convert.ToInt32(ReadLine()); } return contestantsNum;

WriteLine("Please enter the number of contestants for this year.>>"); string input = ReadLine(); int contestantsNum = Convert.ToInt32(input);

while (contestantsNum < LOW || contestantsNum > HIGH) { WriteLine("Valid numbers are 0 through 30, Please try again.>>"); contestantsNum = Convert.ToInt32(ReadLine()); } return contestantsNum; } static string getTalent(int contestantsNum) { bool correct = false; string talentType = ""; while (!correct) { WriteLine("What is contestant " + contestantsNum + "'s skill? Please enter 'S' for Singer, 'D' for Dancer, 'M' for " + "Musician, 'O' for Other.>>"); talentType = ReadLine().ToUpper();

if (talentType == "S" || talentType == "D" || talentType == "M" || talentType == "O") { correct = true; } else { WriteLine("Please enter a valid response.>>"); } } return talentType;

}

static void contestantByTalent(string[] contestant, string[] talent) {

WriteLine ("To see a list of all contestants with a specific talent, Please enter a talent code.talent codes are(S)inger, (D)ancer, (M)usician, (O)ther; altenatively, you may type (E) to exit.>>"); string entry = ReadLine().ToUpper(); while (entry != "E") { if (entry != "S" && entry != "D" && entry != "M" && entry != "O") { WriteLine("That wasn't a valid talent code. Valid talent codes are (S)inger, (D)ancer, (M)usician, (O)ther; altenatively, you may type (E) to exit.>>"); entry = ReadLine().ToUpper(); if (entry == "E") break; } for (int x = 0; x < talent.Length; ++x) { if (entry == talent[x]) WriteLine("Contestant " + contestant[x] + " talent " + talent[x]); } WriteLine("To see a list of all contestants with a specific talent, Please enter a talent code. talent codes are (S)inger, (D)ancer, (M)usician, (O)ther; altenatively, you may type (E) to exit.>>"); entry = ReadLine().ToUpper(); }

}

static void getContestantsInfo(string[] contestant, string[] talent) { for (int x = 0; x < contestant.Length; ++x) { WriteLine("What is the name for Contestant " + (x + 1) + "?"); contestant[x] = ReadLine(); talent[x] = getTalent(x + 1); }

}

static void contestantInfo (int thisYearsContestants, int lastYearsContestants, int fee) {

if (thisYearsContestants > lastYearsContestants * 2) { WriteLine("The competition is more than twice as big this year!"); WriteLine("The expected revenue for this year's competition is {0:C}", (thisYearsContestants * fee)); } else

if (thisYearsContestants > lastYearsContestants && thisYearsContestants <= (lastYearsContestants * 2)) { WriteLine("The competition is bigger than ever!"); WriteLine("The expected revenue for this year's competition is {0:C}", (thisYearsContestants * fee)); } else

if (thisYearsContestants < lastYearsContestants) { WriteLine("A tighter race this year! Come out and cast your vote!"); WriteLine("The expected revenue for this year's competition is {0:C}.", (thisYearsContestants * fee)); }

} }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database And Expert Systems Applications Dexa 2021 Workshops Biokdd Iwcfs Mlkgraphs Al Cares Protime Alsys 2021 Virtual Event September 27 30 2021 Proceedings

Authors: Gabriele Kotsis ,A Min Tjoa ,Ismail Khalil ,Bernhard Moser ,Atif Mashkoor ,Johannes Sametinger ,Anna Fensel ,Jorge Martinez-Gil ,Lukas Fischer

1st Edition

ISBN: 3030871002, 978-3030871000

Students also viewed these Databases questions