
vb 求素数问题
Dima%a=158'从158开始找Doa=a+1Ifisprime(a)Then'调用isprime()函数过程判断a是否素数Text1.Text=Text1.Text...
Dim a%
a = 158 '从158开始找
Do
a = a + 1
If isprime(a) Then '调用isprime()函数过程判断a是否素数
Text1.Text = Text1.Text & " " & a
End If
Loop Until a > 1000
End Sub
'下面这个函数是用来判别一个数是否是素数的
Private Function isprime(a As Integer) As Boolean
Dim flag As Boolean, b%
flag = True
b = 2
Do While b <= Int(a / 2) And flag
If Int(a / b) = a / b Then
flag = False
Else
b = b + 1
End If
Loop
isprime = flag
这是程序 但是不能换行 而且 运行出来的结果不是连续的 请高手解决下 展开
a = 158 '从158开始找
Do
a = a + 1
If isprime(a) Then '调用isprime()函数过程判断a是否素数
Text1.Text = Text1.Text & " " & a
End If
Loop Until a > 1000
End Sub
'下面这个函数是用来判别一个数是否是素数的
Private Function isprime(a As Integer) As Boolean
Dim flag As Boolean, b%
flag = True
b = 2
Do While b <= Int(a / 2) And flag
If Int(a / b) = a / b Then
flag = False
Else
b = b + 1
End If
Loop
isprime = flag
这是程序 但是不能换行 而且 运行出来的结果不是连续的 请高手解决下 展开
2个回答
展开全部
text1的Multiline属性必须为true,才能容纳多行文本。
将这一行改动下下:Text1.Text = Text1.Text & " " & a
改动后:Text1.Text = Text1.Text & " " & a
& vbcrlf
将这一行改动下下:Text1.Text = Text1.Text & " " & a
改动后:Text1.Text = Text1.Text & " " & a
& vbcrlf
展开全部
“运行出来的结果不是连续的”,这什么意思?
修改代码如下:
Dim a As Integer, i As Integer
a = 158
Do
a = a + 1
If isprime(a) Then
i = i + 1
Text1.Text = Text1.Text & " " & a
If i Mod 10 = 0 Then
Text1 = Text1 & vbCrLf '换行
End If
End If
Loop Until a > 1000
修改代码如下:
Dim a As Integer, i As Integer
a = 158
Do
a = a + 1
If isprime(a) Then
i = i + 1
Text1.Text = Text1.Text & " " & a
If i Mod 10 = 0 Then
Text1 = Text1 & vbCrLf '换行
End If
End If
Loop Until a > 1000
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询