(1)根据数字串n的左半部分子串st,构造对称的右半部分,生成回文数p;
(2)若p>n,则p即为最小回文数,如:98712→98789。
(3)若p<=n,则需重新构造p,方法是:从右向左查找字符串st中第一个非“9”的字符;若不存在,则形成“10…01”的回文数p,p的长度比n的长度多1为,如9999→10001。若存在,则将第一个非“9”字符加1,并将该字符后面部分用字符“0”填充,最后构造对称的右半部分,生成回文数p,如:98992→99099。98989

实现上述功能的VB程序如下,请回答下列问题:
(1)如果n为69999,则p为____________。
(2)请在划线处填入合适的代码。
①处代码______________;②处代码______________;③处代码______________。
Private Sub Command1_Click()
Dim n As String, st As String, p As String
Dim In As Integer, i As Integer, j As Integer
n = Text1.Text
1n = Len(n)
st =Mid(n, 1, (1n +:1)\2)
p=st
For i = 1n\2 To 1 Step-1
p=p+ Mid(n, i, 1)
Next iIf ① Then
i=(1n +1)\2
Do While i > 0
If Mid(st, i, 1)="9" Then ② Else Exit DoLoop
If i <1 Then
p="1"For i= 2 To 1n
p=p+"0"
Next i
p=p+"1"
Else
p=Mid(st, 1, i-1)p=p+ Chr(Asc(Mid(st, i, 1))+1)
For j=i+1 To 1n-i
p=p+"0"
Next j
If ③ Then p = p+ Mid(p, i, 1)
For j=i-1 To 1 Step-1
p=p+ Mid(p, j, 1)
Next j
End If
End IfText2.Text = p
End Sub

同类型试题

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2


y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

