这是我这个项目的代码。
Module Module1
Sub Main()
Dim X As Integer
X = 0
Do
X = X + 1
If X / 2 = 0 And X / 3 = 0 Then Debug.Print(X)
System.Console.WriteLine(X)
Loop Until (X = 100)
Console.ReadKey()
End Sub
End Module
Everthing编译得很好,但它只打印数字1到100。我做错了什么?
答案 0 :(得分:2)
你有两个问题。首先,您的Console.WriteLine不是If语句的一部分,因此无论如何都会写X,这就是为什么您会看到打印的每个数字。
这就是一个问题。下一个问题是你的If语句本身并不正确。我认为你正在寻找Mod
来测试一个数字是否可以被另一个整除:
Module Module1
Sub Main()
Dim X As Integer
X = 0
Do
X = X + 1
If X Mod 2 = 0 And X Mod 3 = 0 Then
Debug.Print(X)
System.Console.WriteLine(X)
End If
Loop Until (X = 100)
Console.ReadKey()
End Sub
End Module
答案 1 :(得分:2)
我假设您正在查看是否有任何数字可以被2 和 3整除。如果是这种情况,那么您希望使用Mod
函数,而不是/
,因为没有数字除以任何其他数字= 0,除非该数字本身为0。
If x mod 2 = 0 and x mod 3 = 0 then
'blah blah blah
end if