Private Sub Command1_Click()For i = 3 To 100For j = 2 To Sqr(i)If i Mod j = 0 Then Exit ForNextIf j > Int(Sqr(i)) Then s = s & i & " "NextMsgBox sEnd Submod 函数作用是求余数
判断i是否为质素,就是判断从2开始到i,除i自身外有没有数能和i整除 余数为0 就是能整除
为了减少不必要的判断 循环到 i 平方根 就可以了 再上面就根本不会有满足整除的数
如果求余数为0 则退出循环 此时的j变量值 一定是小于或等于 循环的终止值 sqr(i)
如果在j循环里 找不到 If i Mod j = 0 Then Exit For 满足这个条件的数 当退出j循环时
j值等于 srq(i)+1会大于 srq(i) 故判断j 值大小 就知道 这个i 是否为质素