Compute the Cost of Booking a Workspace
Use conditional statements to calculate the cost of booking a workspace.
Problem statement
You want to book a workspace to increase your productivity. You have the option to choose from the following: an open office space, a dedicated desk, or a private office. You can also decide if you want a daily pass or a monthly pass for the workspace, and you wish to find out the cost based on your requirement. You have the following information:
Open office space
Pass Type | Cost |
---|---|
Daily | $20 |
Monthly | $560 |
Dedicated desk
Pass Type | Cost |
---|---|
Daily | $10 |
Monthly | $270 |
Private office
Pass Type | Cost |
---|---|
Daily | $40 |
Monthly | $1100 |
The main steps in problem-solving
Understand the problem
Read the problem statement carefully. The inputs to the program will be the type of workspace and type of pass, and the output should be the total amount due.
Come up with a practical solution
Since we base our answer on conditions, we need to make use of IF, ELSE-IF, and ELSE statements. One approach to solving this problem is by specifying the type of space in conditional statements. Then, inside the conditional statement blocks, specify the pass type.
Implement your solution
Execute the solution on different test cases to verify it.
Pseudocode
INPUT space_type and pass_type
IF space_type == open office space
IF pass_type == daily
cost = 20
ELSE
cost = 560
ELSE IF space_type == dedicated desk
IF pass_type == daily
cost = 10
ELSE
cost = 270
ELSE IF space_type == private office
IF pass_type == daily
cost = 40
ELSE
cost = 1100
ELSE
cost = 0
OUTPUT not a workspace option
OUTPUT cost
Explanation
Take the space_type
and the pass_type
as an input. Next, check if the space type is an open office space. If it is:
-
Check if the pass type is daily. If it is, then
cost
is set to 20. -
If the pass type is not daily,
cost
equals 560.
If the space type is not an open office space, then we check if the space type is a dedicated desk. If space type is a dedicated desk:
- We check if the pass type is daily or not. If it is daily, then
cost
equals 20, elsecost
equivalents 270.
If the space type is not an open office space or a dedicated desk, we check if the space type is a private office. If it is:
- We set
cost
equal to 40 if the space type is daily and setcost
equal to 1100 if the pass type is not daily.
If the space type is none of the above, we set cost
to 0 and output “not a workspace option.”
Notice that, since the only pass types are daily and weekly, we know that if the pass type is not daily, then it is weekly. Also, we know that if the space type is not an open office space, a dedicated desk, or a private office, then it is not a correct option.
Flowchart
Get hands-on with 1200+ tech skills courses.