您的位置:首页 > 编程语言 > VB

vb实验7-找出小于18000的最大素数

2017-12-17 12:03 417 查看
vb实验7-找出小于18000的最大素数

vb实验7-找出小于18000的最大素数

———–写给女朋友的题解

在窗体上画一个文本框,名称为TEXT1,两个命令按钮,C1和 C2,标题分别为“计算”和“退出”,并编写一个函数过程isprime可以在程序中直接调用,其功能是判断参数a是否为素数,如果是素数,则返回True,否则返回False。

请编写适当的事件过程,使得在运行时,单击“计算”按钮,则找出小于18000的最大素数,并显示在文本框中。

我们先来画窗体,拖一个TextBox,然后清空Text属性



名字已经是TEXT1了



然后拖两个CommandButton,修改名字为C1,C2。修改方法如上图。然后修改Caption属性值分别为“计算”和“退出”。

附效果图:



界面部分就差不多好了。开始写判断一个树是不是素数的函数吧。

Private Function Prime(n As Integer) As Boolean
'函数参数为Integer,如果是素数则返回True,不是则返回False
'如果n小于2,就不是素数
If n < 2 Then

Prime = False

Exit Function

End If

Dim i As Integer

'先让返回值等于True
Prime = True

'然后检查2到根号n是不是有数能整除n
For i = 2 To Sqr(n)

'如果有数能被整除,就返回False
If n Mod i = 0 Then

Prime = False

Exit Function

End If

Next i

'如果没有被前面的if查到,那就是通过了层层筛选而产生的素数
End Function


函数写好了,就开始找找出小于18000的最大素数吧

在C1_Click里面写如下代码

Dim i As Integer

'从18000开始,每次-1,(为什么不从1-18000?因为low)
For i = 18000 To 2 Step -1

'如果找到一个,就输出到Text1,然后退出
If Prime(i) = True Then

Text1.Text = i

Exit Sub

End If

Next i


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐