VB 的一个程序 看不懂 谁能帮我解释一下吗? 谢啦
Private Sub Command1_Click()
Dim m As Integer, n As Integer
Dim flag As Boolean
flag = False
n = Val(InputBox("qingshuru yigeshu "))
Do While Not flag
a = 2
flag = True
Do While flag And a <= Int(Sqr(n))
If n / a = n \ a Then
flag = False
Else
a = a + 1
End If
Loop
If Not flag Then n = n + 1
Loop
Print n
End Sub
我没有想明白“If Not flag Then n = n + 1 “这里Not flag 到底应该是True 还是 False 呢?
答案:如果flag=False 那么 not flag=not False =true,如果flag=true 那么 not flag=not true =False
If Not flag Then n = n + 1
结论就是 如果flag=False 那么就执行n=n+1
整个程序的意思是找到大于等于最接近你输入数的素数
其他:flag=False;
Not flag=true;
If Not flag Then n = n + 1意思是如果flag是Flase的话,执行:n=n+1 其实如果你知道IF只有条件为真时才执行THEN后面语句,这行代码就好理解了,它其实等价于:
If Not flag = True Then n = n + 1
上一个:自学vb看什么书
下一个:自选vb看什么书