Thread: problem
View Single Post
Old Mar 17th, 2008, 10:22 AM   #6
tyson642
Newbie
 
Join Date: Mar 2008
Posts: 3
Rep Power: 0 tyson642 is on a distinguished road
Re: problem

here is a copy of my program

Private Sub cmdok_Click()
Dim usersweight(5) As Integer
Dim usersheight(5) As Integer
Dim usersbmi(5) As Integer
Dim underweight As Integer
Dim idealweight As Integer
Dim overweight As Integer



underweight = 0
idealweight = 0
overweight = 0

Call get_inputs(usersweight(), usersheight())
Call calculate_bmi(usersbmi(), usersweight(), usersheight())
Call count_weight(usersbmi(), underweight, idealweight, overweight)
Call display_details(usersbmi(), usersweight(), usersheight(), underweight, idealweight, overweight)
End Sub

Private Sub get_inputs(ByRef usersweight() As Integer, ByRef usersheight() As Integer)
For Counter = 0 To 4

'validate users weight

Do


 usersweight(Counter) = InputBox("please enter your weight")
If (usersweight(Counter) <= 0) Then MsgBox ("Sorry invalid weight, value must be greater then zero, please re-enter")
Loop Until (usersweight(Counter) > 0)

' validate users height

Do
usersheight(Counter) = InputBox("please enter your height")
If (usersheight(Counter) <= 0) Then MsgBox ("Sorry invalid height, value must be greater then zero, please re-enter")
Loop Until (usersheight(Counter) > 0)
Next




End Sub

Private Sub calculate_bmi(ByRef usersbmi() As Integer, usersweight() As Integer, usersheight() As Integer)

For Counter = 0 To 4
 usersbmi(Counter) = usersweight(Counter) / usersheight(Counter) ^ 2
Next
End Sub

Private Sub count_weight(usersbmi() As Integer, ByRef underweight As Integer, ByRef idealweight As Integer, ByRef overweight As Integer)

For Counter = 0 To 4
If usersbmi(Counter) < 18.5 Then underweight = underweight + 1
If usersbmi(Counter) >= 18.5 And usersbmi(Counter) < 25 Then idealweight = idealweight + 1
If usersbmi(Counter) >= 25 Then overweight = overweight + 1
Next
End Sub

Private Sub display_details(usersbmi() As Integer, usersweight() As Integer, usersheight() As Integer, underweight As Integer, idealweight As Integer, overweight As Integer)

picdisplay.Print "weight"; Tab(25); "height"; Tab(50); "bmi"; Tab(75)
picdisplay.Print "---------------------"; Tab(25); "--------------------------"; Tab(50); "-------------------------"; Tab(75)

For Counter = 0 To 4
picdisplay.Print usersweight(Counter); Tab(25); usersheight(Counter); Tab(50); usersbmi(Counter); Tab(75)
Next

picdisplay.Print ""
picdisplay.Print "underweight"; Tab(25); underweight
picdisplay.Print "idealweight"; Tab(25); idealweight
picdisplay.Print "overweight"; Tab(25); overweight
End Sub

as you can see my main problem is the calculation
Private Sub calculate_bmi(ByRef usersbmi() As Integer, usersweight() As Integer, usersheight() As Integer)

For Counter = 0 To 4
usersbmi(Counter) = usersweight(Counter) / usersheight(Counter) ^ 2
Next
End Sub
tyson642 is offline   Reply With Quote