如果一個正整數(shù)從左到右讀與從右到左讀是一樣的,就稱它為回文式數(shù)(簡稱回數(shù)),如12321.“回數(shù)猜想”的主要思想是,對任意正整數(shù),若它不是回數(shù),則按下列算法即可獲得一個回數(shù):
(1)把該整數(shù)的數(shù)字順序顛倒,求得該數(shù)的逆序數(shù);
(2)將該整數(shù)和其對應(yīng)的逆序數(shù)相加;
(3)若相加結(jié)果不是回數(shù),則將結(jié)果作為新的整數(shù),返回步驟(1).
小林按照上述算法,設(shè)計了驗證回數(shù)猜想的VB程序(猜想次數(shù)不超過10次),程序功能如下:在文本框Text1中輸入一個正整數(shù),單擊“驗證”按鈕(Command1),獲取文本框Text1中的數(shù),當(dāng)該數(shù)不是回數(shù)時,采用回數(shù)猜想的方法進行驗證,并在列表框List1中輸出每次驗證的過程,若驗證成功或驗證次數(shù)超過10次,則停止驗證,最后在列表框List1中輸出驗證結(jié)果.程序運行效果如圖所示.
實現(xiàn)上述功能的VB程序如下:
Private Sub Command1_Click ( )
Dim t As String,a As Long,b As Long
Dim count As Integer'count用于存儲回數(shù)猜想的驗證次數(shù)
t=Text1.Text
count=1
Do While Check(t)=False And count<=10
a=Val(t)
①①
c=a+b
List1.AddItem Str(a) &“+“& Str(b) &“=“& Str(c)
count=count+1
t=Str(c)
Loop
If Check(t) Then
List1.AddItem“驗證成功!“
Else
List1.AddItem“10次內(nèi)未驗證成功!“
End If
End Sub
'自定義函數(shù)Turn
Function Turn(x As String) As Long
Dim s As String,i As Integer
s=““
For i=Len(x) To 1Step-1
s=s & Mid(x,i,1)
Next i
Turn=Val(s)
End Function
'自定義函數(shù)Check,檢查x是否為回文數(shù)
Function Check(x As String) As Boolean
Dim i As Integer
Check=True
For i=1To Len(x)\2Step 1
If Mid(x,i,1)<>②②Then Check=False
Next i
End Function
(1)程序代碼中,自定義函數(shù)Turn(x)的功能是 求x的逆序數(shù)求x的逆序數(shù).
(2)請在橫線處填入合適代碼.
【考點】編輯事件處理過程的代碼.
【答案】①;②;求x的逆序數(shù)
【解答】
【點評】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/4/20 14:35:0組卷:2引用:1難度:0.3
相似題
-
1.學(xué)校舉辦了“語文作文現(xiàn)場賽”,參賽同學(xué)成績存儲在文本文件“gra.jye.ai”中,如左圖所示(每一行記錄一位同學(xué)的姓名和成績,以“:”分隔)。陳老師利用Python程序?qū)ψ魑某煽冞M行處理,統(tǒng)計出各個分數(shù)等級的人數(shù),并輸出結(jié)果。程序運行界面如右圖所示。
實現(xiàn)上述功能的Python程序如下,請在劃線處填入合適的代碼。發(fā)布:2024/12/17 2:0:1組卷:6引用:2難度:0.3 -
2.有如下Python程序段:
執(zhí)行該程序段,輸入字符串“abcdefg”,則輸出的結(jié)果是( )發(fā)布:2024/12/20 6:30:1組卷:2引用:3難度:0.4 -
3.試題描述的內(nèi)容:
一個單窗體VB程序的運行界面如圖所示。下列說法正確的是( )
(1)窗體內(nèi)有1個按鈕
(2)窗體內(nèi)有2個文本框
(3)窗體內(nèi)有3個標(biāo)簽
(4)該窗體的標(biāo)題(Caption)屬性值是“加法計算器”發(fā)布:2024/12/20 20:0:2組卷:1引用:1難度:0.6
把好題分享給你的好友吧~~