I want to create this simple division program.But the problem is that the divisors should not be such that the answer is in decimal places, how do I put the check.Guidance would be appreciated.
Option Explicit
Dim fiCScore As Integer
Dim fiWScore As Integer
Dim fsUsername As String
Dim fiMax1 As Integer
Dim fiMax2 As Integer
Dim liWans As Integer
Private Sub Form_Load()
lstCorrect.Clear
lstWrong.Clear
fiCScore = 0
fiWScore = 0
Randomize
End Sub
Private Sub cmdAskQuestion_Click()
Ask_Question
End Sub
Public Sub Ask_Question()
Dim liOperand1 As Integer
Dim liOperand2 As Integer
Dim liResult As Integer
Dim fbAnswer As Boolean
Dim liEqua1 As Integer
Dim liEqua2 As Integer
Dim lsSign As String
' Number Generation '
fiMax1 = 20
fiMax2 = 20
liEqua1 = Int(fiMax1 * Rnd) + 1
liEqua2 = Int(fiMax2 * Rnd) + 1
liOperand1 = liEqua1
liOperand2 = liEqua2
' Sign Option Select '
'
' Division '
If optDivide = True Then
lsSign = " / "
If liEqua1 < liEqua2 Then
liOperand1 = liEqua2
liOperand2 = liEqua1
End If
'**Problem Point**
liResult = liOperand1 / liOperand2 'liOperand1 / liOperand2 should not be such that answer (liResult) is in decimal places
End If
QuestionAsk:
liWans = Val(InputBox("What is " & liOperand1 & lsSign & _
liOperand2 & " ?"))
End_Time
' If Wans_Validate = False Then
'
' MsgBox "Please enter numbers only.", vbCritical, "ERROR" '
' GoTo QuestionAsk
'
' End If
'
' Answer Checking Correct or Wrong
'
If liWans = liResult Then
MsgBox ("Correct Answer!")
fbAnswer = True
Else
MsgBox ("Incorrect Answer! " _
& liOperand1 & lsSign & liOperand2 & " = " & liResult)
End If