我不知道为什么这个程序不起作用。我得到一个随机数,然后计算机选择它是偶数还是奇数类型?
Dim a As New Random()
Dim b As Integer
Dim ca As Integer
b = a.Next(0, 10)
Debug.Print(b)
ca = b / 2
If ca = 0 Then
Debug.Print("Even")
Else
Debug.Print("Odd")
End If
您搞砸了您的运营商。
您使用除法/
,但要使用模运算符Mod
。
请注意:在C#中为%
。在VB.Net中Mod
参考:http : //msdn.microsoft.com/zh-cn/library/se0w9esz(v=vs.100).aspx
Dim a As New Random()
Dim b As Integer
Dim ca As Integer
b = a.Next(0, 10)
Debug.Print(b)
ca = b Mod 2
If ca = 0 Then
Debug.Print("Even")
Else
Debug.Print("Odd")
End If
为什么您的代码无法按预期工作:罪魁祸首确实是您的if语句。您正在检查的结果是否b / 2
为0。但是只有当b
其自身为0时,这才是正确的。每个大于0的数字除以一半都大于零。
您的代码看起来像您要检查除法的其余部分,因此需要使用模运算符的解决方案。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句