In: Computer Science
c#
In Chapter 2, you created an interactive application named MarshallsRevenue. The program prompts a user for the number of interior and exterior murals scheduled to be painted during the next month by Marshall’s Murals.
Next, the programs compute the expected revenue for each type of mural when interior murals cost $500 each and exterior murals cost $750 each. The application also displays the total expected revenue and a statement that indicates whether more interior murals are scheduled than exterior ones.
Now, modify the application to accept a numeric value for the month being scheduled and to modify the pricing as follows:
Because of uncertain weather conditions, exterior murals cannot be painted in December through February, so change the number of exterior murals to 0 for those months.
Marshall prefers to paint exterior murals in April, May, September, and October. To encourage business, he charges only $699 for an exterior mural during those months. Murals in other months continue to cost $750.
Marshall prefers to paint interior murals in July and August, so he charges only $450 for an interior mural during those months. Murals in other months continue to cost $500
using System;
using static System.Console;
class MarshallsRevenue
{
static void Main()
{
const int INTERIOR_PRICE = 500;
const int EXTERIOR_PRICE = 750;
string entryString;
int numInterior;
int numExterior;
int revenueInterior;
int revenueExterior;
int total;
bool isInteriorGreater;
Write("Enter number of interior murals scheduled >> ");
entryString = ReadLine();
numInterior = Convert.ToInt32(entryString);
Write("Enter number of exterior murals scheduled >> ");
entryString = ReadLine();
numExterior = Convert.ToInt32(entryString);
revenueInterior = numInterior * INTERIOR_PRICE;
revenueExterior = numExterior * EXTERIOR_PRICE;
total = revenueInterior + revenueExterior;
isInteriorGreater = numInterior > numExterior;
WriteLine("{0} interior murals are scheduled at {1} each for a
total of {2}",
numInterior, INTERIOR_PRICE.ToString("C"),
revenueInterior.ToString("C"));
WriteLine("{0} exterior murals are scheduled at {1} each for a
total of {2}",
numExterior, EXTERIOR_PRICE.ToString("C"),
revenueExterior.ToString("C"));
WriteLine("Total revenue expected is {0}",
total.ToString("C"));
WriteLine("It is {0} that there are more interior murals scheduled
than exterior ones.", isInteriorGreater);
}
}
Code Screenshots:
Sample Output:
Code to Copy:
using System;
using static System.Console;
class MarshallsRevenue
{
static void Main()
{
const int INTERIOR_PRICE = 500;
const int EXTERIOR_PRICE = 750;
string entryString;
int numInterior;
int numExterior;
int revenueInterior;
int revenueExterior;
int total;
bool isInteriorGreater;
// Declare the
// required variables.
bool is_valid_month = true;
int month;
int month_inter_price = INTERIOR_PRICE;
int month_exter_price = EXTERIOR_PRICE;
// Prompt te user
// to enter the month.
Write("Enter number of month being scheduled >> ");
// Read the input.
entryString = ReadLine();
// Convert the input to an integer.
month = Convert.ToInt32(entryString);
Write("Enter number of interior murals scheduled >> ");
entryString = ReadLine();
numInterior = Convert.ToInt32(entryString);
Write("Enter number of exterior murals scheduled >> ");
entryString = ReadLine();
numExterior = Convert.ToInt32(entryString);
// Use a switch case to perform the
// action as per the entered month.
switch(month)
{
// Set the exterior murals
// to zero for the month
// December through February.
case 1:
case 2:
case 12:
numExterior = 0;
break;
// If the month is either
// one of April, May, September
// or October, reduce the price
// of exterior murals.
case 4:
case 5:
case 9:
case 10:
month_exter_price = 699;
break;
// If the month is either
// July or August
// or October, reduce the price
// of interior murals.
case 7:
case 8:
month_inter_price = 450;
break;
// Do nothing for the
// month of March, June,
// and November.
case 3:
case 6:
case 11:
break;
// If the entered month is
// invalid, display an error
// message and set the
// is_valid_month to false.
default:
WriteLine("The entered month is invalid.");
is_valid_month = false;
break;
}
// If the entered month is
// valid, perform the
// calculations and display the results.
if(is_valid_month)
{
revenueInterior = numInterior * month_inter_price;
revenueExterior = numExterior * month_exter_price;
total = revenueInterior + revenueExterior;
isInteriorGreater = numInterior > numExterior;
WriteLine("{0} interior murals are scheduled at {1} each for a total of {2}",
numInterior, month_inter_price.ToString("C"), revenueInterior.ToString("C"));
WriteLine("{0} exterior murals are scheduled at {1} each for a total of {2}",
numExterior, month_exter_price.ToString("C"), revenueExterior.ToString("C"));
WriteLine("Total revenue expected is {0}", total.ToString("C"));
WriteLine("It is {0} that there are more interior murals scheduled than exterior ones.", isInteriorGreater);
}
}
}