The table below gives the price schedule for Eddie’s Equipment Rental. Full-day rentals cost one-and-a-half times the half-day rentals. In Visual Basic, write a program that displays the table in a list box when an appropriate button is clicked on and displays a bill in another list box based on the item number and time period chosen by a customer. The bill should include a $30.00 deposit. A sample output is shown below.
Piece of Equipment / Half-Day / Full-Day
1. Rug cleaner / $16.00 / $24.00
2. Lawn mower / $12.00 / $18.00
3. Paint sprayer / $20.00 / $30.00
Suggested Control Names and Attributes:
Name Property | Text Property | Control Type | Notes | |
frmRentalCost | Welcome To Eddie’s Equipment Rentals | Form | Holds Controls | |
btnDisplayRates | Display Rental Rates | Button | Triggers event to display rental rates | |
lstRates | N/A | ListBox | Displays rental rates | |
mtbItemNum | N/A | MaskedTextBox | Captures item # | |
mtbDuration | N/A | Button | Triggers event to display bill | |
lstBill | N/A | ListBox | Displays bill |
Write the Code:
' Project: Rental Cost ' Description: Calculates the total cost for rental equipment ' User chooses options for rental equipment and length of rental ' Total cost is computed and output Public Class frmRentalCost Private Sub btnDisplayRates_Click(sender As Object, e As EventArgs) Handles btnDisplayRates.Click lstRates.Items.Clear() lstRates.Items.Add("Price of Equipment Half-Day Full-Day") lstRates.Items.Add("1. Rug cleaner $16.00 $24.00") lstRates.Items.Add("2. Lawn mower $12.00 $18.00") lstRates.Items.Add("3. Paint sprayer $20.00 $30.00") End Sub Private Sub btnDisplayBill_Click(sender As Object, e As EventArgs) Handles btnDisplayBill.Click ' Declare and initialize local variables Dim duration As String = " " Dim itemNum As Integer = CInt(mtbItemNum.Text) Dim itemCost As Integer = 0 Dim totalCost As Integer = 0 'Display bill based on input data lstBill.Items.Clear() lstBill.Items.Add("Receipt from Eddie's Equipment Rental") lstBill.Items.Add(" ") If (mtbDuration.Text = "H") Or (mtbDuration.Text = "h") Then ' display prices for half day rental duration = "H" Select Case itemNum Case 1 lstBill.Items.Add("Rug cleaner: $16.00 (Half Day Rental)") itemCost = 16 Case 2 lstBill.Items.Add("Lawn mower $12.00 (Half Day Rental)") itemCost = 12 Case 3 lstBill.Items.Add("Paint sprayer $20.00 (Half Day Rental)") itemCost = 20 Case Else MessageBox.Show("You have entered an invalid item number") End Select ElseIf (mtbDuration.Text = "F") Or (mtbDuration.Text = "f") Then ' display prices for full day rental duration = "F" Select Case itemNum Case 1 lstBill.Items.Add("Rug cleaner: $24.00 (Full Day Rental)") itemCost = 24 Case 2 lstBill.Items.Add("Lawn mower $18.00 (Full Day Rental)") itemCost = 18 Case 3 lstBill.Items.Add("Paint sprayer $30.00 (Full Day Rental)") itemCost = 30 End Select Else MessageBox.Show("You have entered an invalid duration") End If ' Calculate and display the total totalCost = itemCost + 30 lstBill.Items.Add("Deposit: = $30.00") lstBill.Items.Add(" ") lstBill.Items.Add("Total: " & totalCost.ToString("C")) End Sub End Class