iMobile.cpp iMobile is a mobile phone service company that offers three different data plans to its customers. O Plan A: Price: $39.99 per month. Data allowance: Includes 4 gigabytes of data. Additional data costs $10 per gigabyte. O Plan B: Price: $59.99 per month. Data Allowance: Includes 8 gigabytes of data. Additional data costs $5 per gigabyte. O Plan C: Price: $69.99 per month. Data Allowance: Unlimited

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Hi, need help with this code. my professor mentions that we need to use if and switch statements for this code. In not sure if both switch and if statements can be used in the same code. the code below only has if statements. can both switch and if can be used? need help please. I provided pictures of code instructions and how the output/input validation needs to look.

 

#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int main()
{
//variables and constants
int packageType;
double dataUsed;
double monthlyCharges = 0.0;

// Name of the program
cout << "iMobile Bill Calculator ..." << endl;

// Display the pacakge options for user to pick
while (true)
{
cout << "\nSelect a subscription :" << endl;
;
cout << "\t\t1. Package A" << endl;
cout << "\t\t2. Package B" << endl;
cout << "\t\t3. Package C" << endl;
cout << "Package: ";
cin >> packageType;

// When a package number is not vaild
if (packageType >= 1 && packageType <= 3)
break;
else
cout << "Error ... Invalid package. Try again." << endl;
}
// When Gigabytes entered is not valid
while (true)
{
cout << "\nHow many gigabytes of data were used? ";
cin >> dataUsed;
if (dataUsed < 0)
{
cout << "Error ... Invalid gigabytes entered. Try again." << endl;
}
else
break;
}
// Monthtly Charges for Plan B
if (packageType == 1)
{
if (dataUsed >= 0 && dataUsed <= 4)
{
monthlyCharges = 39.99;
}
// Monthtly Charges for Plan A with additional data costs
else
{
monthlyCharges = 39.99 + (dataUsed - 4) * 10;
}
}
// Monthtly Charges for Plan B
else if (packageType == 2)
{
if (dataUsed >= 0 && dataUsed <= 8)
{
monthlyCharges = 59.99;
}
// Monthtly Charges for Plan B with additional data costs
else
{
monthlyCharges = 59.99 + (dataUsed - 8) * 5;
}
}
// Monthly Charges for Plan C
else if (packageType == 3)
{
monthlyCharges = 75;
}

// Display the monthly total amount
cout << "The total amount due is $" << monthlyCharges << endl;

return 0;
}

Output Samples
Microsoft Visual Studio Debug Console
iMobile Bill Calculator ...
Select a subscription package:
1. Package A
2. Package B
3. Package C
Package: 1
How many gigabytes of data were used? 12.5
The total amount due is $124.99
The Text version of the Output samples for the iMobile Service Provided program.
Input Validation
| Microsoft Visual Studio Debug Console
iMobile Bill Calculator ...
Select a subscription package:
1. Package A
2. Package B
3. Package c
Package: 0
Error
Invalid package. Try again.
...
A Microsoft Visual Studio Debug Console
iMobile Bill Calculator ...
Select a subscription package:
1. Package A
2. Package B
3. Package C
Package: 2
How many gigabytes of data were used? -100
Invalid gigabytes entered. Try again.
Error
...
Transcribed Image Text:Output Samples Microsoft Visual Studio Debug Console iMobile Bill Calculator ... Select a subscription package: 1. Package A 2. Package B 3. Package C Package: 1 How many gigabytes of data were used? 12.5 The total amount due is $124.99 The Text version of the Output samples for the iMobile Service Provided program. Input Validation | Microsoft Visual Studio Debug Console iMobile Bill Calculator ... Select a subscription package: 1. Package A 2. Package B 3. Package c Package: 0 Error Invalid package. Try again. ... A Microsoft Visual Studio Debug Console iMobile Bill Calculator ... Select a subscription package: 1. Package A 2. Package B 3. Package C Package: 2 How many gigabytes of data were used? -100 Invalid gigabytes entered. Try again. Error ...
iMobile Service Provided
O iMobile.cpp
iMobile is a mobile phone service company that offers three different data plans to its customers.
Plan A:
Price: $39.99 per month.
Data allowance: Includes 4 gigabytes of data. Additional data costs $10 per gigabyte.
Plan B:
Price: $59.99 per month.
Data Allowance: Includes 8 gigabytes of data. Additional data costs $5 per gigabyte.
O Plan C:
Price: $69.99 per month.
Data Allowance: Unlimited
Write a program that calculates a customer's monthly bill. It should prompt the user for the customer's plan and the number of
gigabytes of data used. It should then calculate and display the total amount due.
Notes
Use a menu to prompt user for Plan.
O Input Validation
Display an error message if the user enters an invalid menu option.
Do not allow negative values for data used.
O Display amount due, formatted with a precision of two decimal values.
Transcribed Image Text:iMobile Service Provided O iMobile.cpp iMobile is a mobile phone service company that offers three different data plans to its customers. Plan A: Price: $39.99 per month. Data allowance: Includes 4 gigabytes of data. Additional data costs $10 per gigabyte. Plan B: Price: $59.99 per month. Data Allowance: Includes 8 gigabytes of data. Additional data costs $5 per gigabyte. O Plan C: Price: $69.99 per month. Data Allowance: Unlimited Write a program that calculates a customer's monthly bill. It should prompt the user for the customer's plan and the number of gigabytes of data used. It should then calculate and display the total amount due. Notes Use a menu to prompt user for Plan. O Input Validation Display an error message if the user enters an invalid menu option. Do not allow negative values for data used. O Display amount due, formatted with a precision of two decimal values.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education