16.任意一個大于等于4 的偶數(shù),都可以用兩個素?cái)?shù)之和表示,這就是哥德巴赫猜想.如:4=2+2,6=3+3,8=3+5,10=5+5,12=5+7,98=17+79. 編寫一個驗(yàn)證哥德巴赫猜想的VB 程序:程序運(yùn)行時,在文本框Text1 中輸入一個大于等于4 的偶數(shù),單擊“驗(yàn)證”按鈕Command1 后,如果哥德巴赫猜想驗(yàn)證成功,則在文本框Text2 中顯示“Yes”,并在列表框List1 中顯示用兩個素?cái)?shù)表示該偶數(shù)的等式,否則顯示“No”.程序運(yùn)行結(jié)果如圖所示.實(shí)現(xiàn)上述功能的VB 代碼如下,但加框處代碼有錯,請改正. 函數(shù)judge的功能是判斷整數(shù)x是否為素?cái)?shù),若是素?cái)?shù)則返回True,否則返回False Function judge(x As Integer)As Boolean Dim j As Integer judge=True j=2 Do While j<=x-1And judge=True If x Mod j=0Then judge=False Else judge=true‘①
End If Loop End Function Private Sub Command1_Click ( ?。?br />Dim n As Integer,p As Integer,q As Integer,flag As Boolean n=Val(Text1.Text) p=1 flag=False Do While flag=True And p<n‘②
p=p+1 q=q+1‘③
If judge(p) And judge(q) Then Text2.Text=“Yes“ flag=True List1.AddItem Str(n)+“=“+Str(p)+“+“+Str(q) End If Loop If flag=False Then Text2.Text=“No“ End Sub.
17.【加試題】下列程序的功能是將text1中輸入的自然數(shù)分解為3個互不相同的質(zhì)數(shù)(三個質(zhì)數(shù)的和等于輸入的自然數(shù)),并把分解產(chǎn)生的質(zhì)數(shù)按升序順序顯示在右邊的列表框中.例如,輸入20,那么在列表框中會顯示如下圖所示結(jié)果.其中,界面中“分解”按鈕的名稱是“Command1”,程序中函數(shù)f(x)的功能是判斷x是否為質(zhì)數(shù),如果是質(zhì)數(shù),則返回值為true,否則返回false. 請?jiān)谙铝谐绦虼a的基礎(chǔ)上按照要求設(shè)計(jì)該程序,完善程序中的劃線部分. Dim n As Integer,a1As Integer,a3As Integer,a3As Integer Function f(x)As Boolean f=True For i=2To Sqr(x) If x Mod i=0Then
Next i End Function Private Sub Command1_Click( ) n=
For a1=2To n For a2=a1To n For a3=a2To n If
And f(a1)And f(a2)And f(a3)Then List1.AddItem Str(a1)+“”+Str(a2)+“”+Str(a3) End If Next a3 Next a2 Next a1 End Sub (1)程序中①橫線處應(yīng)填入