我目前正在为一所学校项目编写数学问题课程。我被困在特定部分的分裂部分。
分子总是要大于分母,但商总是需要是一个整数。该程序应该从1-20随机生成数字。
Ex:14/7 = 2 分子>分母=结果是整数,而不是小数。
谢谢!
注意:我们不允许回答我们的答案。除法总是必须产生一个整数。
答案 0 :(得分:0)
只需将变量声明为整数,然后进行除法。如果你不关心剩余部分或它是如何舍入的。例如来自Microsoft:
Dim resultValue As Integer
resultValue = 11 \ 4 'result is 2
resultValue = 9 \ 3 'result is 3
resultValue = 100 \ 3 'result is 33
resultValue = 67 \ -3 'result is -22
如果要向上或向下舍入,可以简单地将double作为结果值并将新值设置为整数。例如:
Public Function RoundUp(ByVal num) As Long
If num >= 0 Then
If num = Int(num) Then
RoundUp = num
Else
RoundUp = Int(num) + 1
End If
ElseIf num < 0 Then
RoundUp = Int(num)
End If
End Function
Public Function RoundDown(ByVal num) As Long
RoundDown = Fix(num)
If num >= 0 Then
If num = Int(num) Then
RoundDown = num
Else
RoundDown = Int(num)
End If
ElseIf Number < 0 Then
RoundDown = Int(num) - 1
End If
End Function
编辑。这是你在找什么?
Public Function InputIsValid(ByVal numerator, ByVal denominator) As Boolean
If (numerator > denominator) AND (numerator Mod denominator = 0) Then
Return True
End If
Return False
End Function
答案 1 :(得分:0)
要以正确的方式查找结果,您可以使用以下代码
Dim num, den As Double
If num Mod den = 0 Then
MsgBox("whole number")
Else
MsgBox("decemial number")
End If