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

VB for循环

代码: Private Sub Command1_Click() Dim a As Integer, b As Integer For a = 101 To 300 Step 2 For b = 2 To a - 1 If a Mod b = 0 Then Exit For End If Next b If b >= a Then Text1.Text = Text1.Text & Space(5) & a End If Next a End Sub 求素数,有点小问题。 for a = 101 to 300 Step 2 设置在100-300之间,为什么可以设置101-299,是不是为后面的 b = 2 to a - 1专门设置的语句? a mod b =0具体是什么意思?是a被b整除还是b被a整除? 为什么说b >=a的话就能确定是素数了? 求真相,详细点,谢谢。
补充:for a = 101 to 300 Step 2
设置在100-300之间,为什么不可以设置101-299,是不是为后面的 b = 2 to a - 1专门设置的语句?
上面那个打错了
答案:(1)设置101-299结果是一样的,因为299不是素数,这里求的是素数。
后面的 b = 2 to a - 1,是另一重循环,作“除数”,看是否可以整除。
但不可以设置“100-300”之间,因为这样你就只判断偶数了,除非你把“ Step 2”去掉。
(2)a mod b =0 是判断是否整除,代表a除以b时的余数。
(3)判断是否为素数就看从2到本身减1是否有可以整除的数。一个自然数除以比其本身大的数结果会小于1,不符合整除的概念。

上一个:vb中scale full是什么意思啊,小弟求教各位大侠啦
下一个:vb问题,如何放大或缩小剪贴板中的图?

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