Public Class frmHotelOccupancy
Private Sub btnOccupancyInformation_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOccupancyInformation.Click
' The btnOccupancyInformation click event accepts and displays up to thirty rooms
' from the user, and then calculates and displays the % of occupancy.
' Declare and Initialze variables
Dim decOccupiedRooms As Decimal
Dim strOccupiedRooms As String
Dim decTotalRooms As Decimal = 10
Dim strTotalRooms As String = CStr(0)
Dim intTotalRooms As Integer = 0
Dim intTotalOccupied As Integer = 0
Dim intTotalVacant As Integer = 0
Dim intVacant As Integer = 0
Dim decOccupancyRate As Decimal
Dim strInputMessage As String = "Enter # of occupied rooms"
Dim strInputHeading As String = "Occupancy Percent"
Dim strNormalMessage As String = "Enter # of occupied rooms"
Dim strNonNumericError As String = "ERROR - Enter a # of rooms occupied"
Dim strNegativeError As String = "ERROR - Enter a positive # of occupied rooms"
Dim intFloor As Integer
For intFloor = 1 To 7
Next
' Declare and intialize loop variables
Dim strCancelClick As String = ""
Dim intMaxNumberOfEntries As Integer = 6
Dim intMinNumberOfEntries As Integer = 0
' This loop allows the user to enter the room information (vacany or occupied)
' up to 10 rooms, and 7 floors. The loop terminates when the user has entered
' 10 rooms per 7 floors or clicks the Cancel button or the Close button in the InputBox.
strOccupiedRooms = InputBox(strInputMessage & intTotalOccupied, strInputHeading, " ")
Do Until intTotalOccupied > intMaxNumberOfEntries Or strOccupiedRooms = strCancelClick
If IsNumeric(strTotalRooms) Then
decOccupiedRooms = Convert.ToDecimal(strOccupiedRooms)
If decOccupiedRooms > 0 Then
lstVacancyAndOccupancy.Items.Add(decOccupiedRooms)
decOccupiedRooms += decOccupancyRate
intTotalOccupied += 1
strInputMessage = strNormalMessage
Else
strInputMessage = strNegativeError
End If
Else
strInputMessage = strNonNumericError
End If
If intTotalOccupied <= intMaxNumberOfEntries Then
strTotalRooms = InputBox(strInputMessage & intTotalRooms, strInputHeading, " ")
End If
Loop
'Makes label visible
lblPercentage.Visible = True
' Calculate and display pecentage of occupied rooms
If intTotalOccupied > -1 Then
decOccupancyRate = decOccupiedRooms / (decTotalRooms)
lblPercentage.Text = "Percentage of rooms occupied " & _
decOccupancyRate.ToString("F1") & "%"
Else
lblPercentage.Text = "No room occupancy entered"
End If
'Display the Enter Room Information button
btnOccupancyInformation.Enabled = False
End Sub