VB:验证哥德巴赫猜想

xiaoxiao2021-02-28  39

题目来源:大工慕课 链接 原题:Visual Basic程序设计教程(第二版)龚沛曾主编,高等教育出版社 实验6-6 作者:Caleb Sung

题目要求

验证哥德巴赫猜想:任意一个大于2的偶数都可以表示成两个素数之和。编程将6~100之间的全部偶数表示为两个素数之和,在列表框显示结果,最后Label1显示共有多少对素数之和,效果如图所示。

提示:

编一求素数的函数prime(m),若m是素数,则函数的返回值为True,否则为False。主调程序对已知6~100之间的全部偶数Even,把它分解成两个奇数Odd1和Odd2(Even-Odd1),先调用prime函数,判断Odd1是否是素数,若不是素数,则不必再对Odd2进行判断;否则再判断Odd2,若都是素数,则添加到列表框。利用两重循环来实现,外循环变量Even(6~100的偶数),内循环将Odd1(3~Even/2之间的奇数)和Odd2(Even-Odd1)进行判断。

参考代码

Function prime(ByVal m As Integer) As Boolean prime = True Dim i% For i = 2 To m - 1 If (m Mod i) = 0 Then prime = False: Exit Function Next i End Function Private Sub Command1_Click() n = 0 For i = 6 To 100 Step 2 For j = 3 To i \ 2 If prime(j) Then If prime(i - j) Then List1.AddItem i & " =" & j & " +" & i - j n = n + 1 End If End If Next j Next i Label1.Caption = " 6和100之间共有" & n & "对素数和" End Sub
转载请注明原文地址: https://www.6miu.com/read-2628807.html

最新回复(0)