Visual Basic.NET实验 编写程序计算任意两个正整数之间的所有素数,并在多行文本框中输出结果

给我也发一份吧就是用vb2010的... 给我也发一份吧
就是用vb2010的
展开
 我来答
悠悠周郎
2017-04-04 · TA获得超过2573个赞
知道大有可为答主
回答量:3325
采纳率:95%
帮助的人:516万
展开全部

Public Class frm主

Dim int第一个数 As Integer ' 定义第一个数
Dim int第二个数 As Integer ' 定义第二个数

Private Function fun是否为素数(ByVal int整数 As Integer) As Boolean '

If int整数 = 0 OrElse int整数 = 1 Then ' 0 和 1 既不是素数也不是合数
Return False
ElseIf int整数 = 2 Then ' 2 是最小的素数
Return True
ElseIf int整数 > 2 And int整数 Mod 2 = 0 Then ' 如果能够被 2 整除,偶数不算(2 例外)
Return False
ElseIf int整数 Mod 2 <> 0 Then

For int因数 As Integer = 3 To Math.Sqrt(int整数) Step 2 ' 如果能够被某个奇数整除就不是素数
If int整数 Mod int因数 = 0 Then
Return False
Else
Continue For
End If
Next

End If
Return True ' 如果上述条件均不成立,这就是一个素数
End Function

Private Sub 单击计算按钮(sender As Object, e As EventArgs) Handles btn计算.Click
txt结果.Clear()

If Not IsNumeric(txt第一个数.Text) OrElse Not IsNumeric(txt第二个数.Text) Then ' 确保文本框输入的是数值。
MsgBox("请在两个文本框中输入数值。")
If Not IsNumeric(txt第一个数.Text) Then
txt第一个数.SelectAll()
txt第一个数.Focus()
Else
txt第二个数.SelectAll()
txt第二个数.Focus()
End If
Exit Sub
End If

If CInt(txt第一个数.Text) < CInt(txt第二个数.Text) Then ' 确保第一个数小于第二个数
int第一个数 = CInt(txt第一个数.Text)
int第二个数 = CInt(txt第二个数.Text)
Else
int第一个数 = CInt(txt第二个数.Text)
int第二个数 = CInt(txt第一个数.Text)
End If

If int第一个数 <= 0 AndAlso int第二个数 <= 0 Then ' 小于 1 的整数中不存在素数和合数
MsgBox("素数和合数只在大于等于 2 的自然数中存在。")
Exit Sub
ElseIf int第一个数 <= 1 Then
int第一个数 = 2
End If

For int整数 As Integer = int第一个数 To int第二个数
If fun是否为素数(int整数) Then
txt结果.Text &= "素数:" & int整数 & vbCrLf
Else
Continue For
End If
Next
End Sub
End Class


更多追问追答
追问
压缩包老显示带毒啊???
追答
晕,我只不过是把写好的代码和运行过的程序压缩在一起了。这里有百度安全检测,没问题的,你先关掉你的杀毒软件,把它解压缩之后再打开。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式