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

求分析下列一段VB代码

求1000以内所有素数的和是 Dim i As Integer Dim j As Integer Dim sum as Long Dim j AS Boolean sum=0 i=2 Do While i<=1000 f=True For j=2 TO i-1 If i Mod j =0 Then f=flase End if Next j If f Then sum=sum+i End if i=i+1 Loop Print sum 求分析,尤其是从f=True这边开始的,好的我会悬赏的
答案:Dim i As Integer
Dim j As Integer
Dim sum As Long '用于存储素数和
'Dim j As Boolean    '这句有错误,应改为下面语句
Dim f As Boolean    '是否为素数,True 是,False 否
sum = 0 '初始化素数和为零
i = 2   '从2开始分析
Do While i <= 1000  '分析2—1000内的素数
    f = True    '先假定i是素数
    
    For j = 2 To i - 1  '用i分别除以2到i-1内的所有数
        If i Mod j = 0 Then '如果能整除某个数(余数为零)
            f = False   '则i不是素数,注意原来的False拼写错了,不过不影响计算结果
            Exit For   '加上这一句,可以提前跳出For循环,节省计算过程
       End If
    Next j
    
    If f Then   '如果i是素数
        sum = sum + i   '素数和加上i
    End If
    i = i + 1   '分析下一个数
Loop

Print sum   '输出素数和

上一个:帮忙做道VB语言程序设计,谢了
下一个:vb编写问题

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