当前位置:编程学习 > VB >>

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看什么书

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,