求一个五位数是否为回文数

问题描述:

求一个五位数是否为回文数
Private Sub Form_Click()
a = InputBox("1")
Print a
sl = Len(a)
For i = 1 To 2
If Left(a, i) Right(a, i) Then
Print "no"
Exit For
Else
Print "yes"
End If
Next
End Sub
请问错在哪里? 谢谢!
niuxiaojia45 你的答案我复制上去 可是运行的时候无论输入什么都打印出"yes"!
1个回答 分类:综合 2014-10-29

问题解答:

我来补答
你的if只比较了第一位和最后一位就会输出一次答案,如果输入12341就会输出
yes
no
输入12321也是输出
yes
no
你的程序第一位可以判断正确,但当i 的值为2时就会出错.当输入a=12321
left(a,2)=12而right(a,2)=21 很明显他们不相等.
你可以这样写
Private Sub Form_Click()
a = InputBox("1")
do while len(a)5 '输入不是5位数就重新输入
msgbox "请输入一个5位数!"
a=inputbox("1")
loop
For i = 1 To 2
If Mid(a,i,1) Mid(a,6 - i,1) Then
Exit For
Else
Print "yes"
Exit Sub
End If
Next i
Print "no"
End Su
 
 
展开全文阅读
剩余:2000
上一页:求形状的题不会