VB编程将6~100之间的全部偶数表示为两个素数之和,在列表框显示结果,由label 1显示共有多少对素数之和。

界面:一个按钮触发列表框显示数据,和一个label显示“6~100之间有X对素数和”
比如10=5+5,10=3+7

此题需要先编写一个求素数的自定义函数,具体如下:
1.打开VB,画一个ListBox控件,名称List1,再画一个Label控件,名称Label1
2.画一个Command控件,名称Command1
3.双击Command1,打开代码窗口,输入如下代码:

Function PDsu(a As Integer) As Integer
Dim b As Integer: Dim i As Integer
If a <= 3 Then
PDsu = 1
Else
b = a \ 2
For i = 2 To b
If (a Mod i) = 0 Then
PDsu = 0: Exit Function
Exit For
End If
Next i
PDsu = 1
End If
End Function

Private Sub Command1_Click()
Dim m As Integer
Dim n As Integer
Dim i As Integer
Dim s As Integer
s = 0
For i = 6 To 100 Step 2
For m = 2 To i - 2
n = i - m
If (PDsu(m) = 1) And (PDsu(n) = 1) Then
List1.AddItem Str(i) & "=" & Str(m) & "+" & Str(n): s = s + 1
Exit For
End If
Next m
Next i
Label1.Caption = "6-100间共有" & Str(s) & "对素数和"
End Sub

4.如果操作输入无误,即可以显示正常结果,共有48对素数和
说明:解答此题,我用了约10分钟,给我加分吧
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-06-03
Private Sub Command1_Click()
Dim a As Integer, b As Integer
Dim i As Integer, j As Integer
Dim k As Integer

a = 6
b = 100

List1.Clear
For i = a To b Step 2
For j = 2 To i / 2
If Prime(j) And Prime(i - j) Then
k = k + 1
List1.AddItem CStr(k) & ": " & CStr(i) & "=" & CStr(j) & "+" & CStr(i - j) '修改这里的代码就行了
End If
Next j
Next i
Label1.Caption = "6~100之间有" & CStr(k) & "对素数和"
End Sub

'判断是否为素数
Private Function Prime(n As Integer) As Boolean
Dim i As Integer
If n = 1 Then
Exit Function
ElseIf n = 2 Then
Prime = True
Exit Function
ElseIf n Mod 2 = 0 Then
Exit Function
End If
For i = 3 To Sqr(n) Step 2
If n Mod i = 0 Then Exit Function
Next i
Prime = True
End Function本回答被提问者采纳

VB编程将6~100之间的全部偶数表示为两个素数之和,在列表框显示结果,由...
1.打开VB,画一个ListBox控件,名称List1,再画一个Label控件,名称Label1 2.画一个Command控件,名称Command1 3.双击Command1,打开代码窗口,输入如下代码:Function PDsu(a As Integer) As Integer Dim b As Integer: Dim i As Integer If a <= 3 Then PDsu = 1 Else b = a \\ 2 For ...

用VB编程,求2~100之间所有的素数,要求通过一个自定义函数来求解某个数...
For i = 2 To Sqr(n) '2~该数开放(加快速度) ' \\ 函 If n Mod i = 0 Then p = 1 '返回0为素数,1为合数 ' \/ 数 Next i ' \/ '\/ End Function

...矩阵显示在窗体中, 求和及其中最大最小数,用label
新建一工程,在窗体上拖入一个label控件,一个command控件。调整label控件的大小,以便能放下这个10*10的阵列。然后进入代码区,删除所有代码后,粘贴以下代码即可。Option ExplicitPrivate Sub Command1_Click()Dim I As Integer, J As Integer, N As IntegerDim S As Integer, Max As Integer, min ...

1到100随机产生一个数判断奇偶性结果在label1中显示
vb private sub command1_click()dim x as integer x=int(rnd*100)+1 if x mod 2=0 then label1.caption="偶数"else label1.caption="奇数"end if end sub

vb编程 奇数位只和与偶数位之和均为素数
intN = InputBox("Please input a Positive integer N:", "Seek peculiar number", 100)Me.Label1 = "在1至" & intN & "的整数中所有奇异数(奇数位" + vbCrLf + "之和与偶数位之和均为素数的数)如下:"For i = 1 To intN Uneven = 0 Even = 0 For j = 1 To Len(CStr(i)...

用VB编写:在窗体上输出1到100之间的偶数,要求每10个数显示一行。
Dim i As Integer, j As Integer j = 0 Label1.Caption = ""For i = 1 To 100 If i Mod 2 = 0 Then j = j + 1 Label1.Caption = Label1.Caption & i & " "If j Mod 10 = 0 Then Label1.Caption = Label1.Caption & Chr(13)End If Next ...

用VB 编程 找出1-100 里面的素数
print在窗体打印输出 追问: VB2008 就是你现在写的 程序 输进去,他说 Print 未定义 应该对 它function否则不能用啊 回答: 我这是VB6.0的,VB2008不能直接用print输出在窗体,下面是vb2008写的代码,结果在名为label1的 标签 中输出 Public Class Form1 Private Sub Form1_Load(ByVal...

求vb代码:按一个按钮随机出现一道有两个100到999之间的数组成的计算题...
在窗体form1上画一个label1显示算式、一个text1输入答案,一个command1(更换命题)和一个command2(提交答案)。然后将以下代码黏贴到form1代码窗运行。你自己的代码做了部分调整放在command1里了:Dim shu1 As Long, shu2 As Long, fuhao As String Private Sub Command1_Click()Randomize shu1 ...

从键盘上任意输入两个数,将这两个数的加法式子显示在标签Label1中
Private Sub Command1_Click()Dim a Dim b Dim c a = Val(InputBox("第一个数 =", "数据输入", "0"))b = Val(InputBox("第二个数 =", "数据输入", "0"))c = a + b Label1.Caption = Str(a) & " +" & Str(b) & " =" & Str(c)End Sub ...

vb中怎样实现计算1—n的奇偶数之和:(n为自然数)
if i mod 2=0 then'利用mod函数来判断i的值是偶数还是奇数 oushuhe=oushuhe+i'如果是偶数,就将其累加到oushuhe变量中 else jishuhe=jishuhe+i'如果是奇数,就将其累加到技术和变量中 end if next msgbox "偶数和为" & oushuhe“,奇数和为"& jishuhe'利用msgbox显示结果 end sub ...

相似回答