找出所有4位数的升序数和回文数,使用函数实现回文数和升序数的判断.用VB编程,马上啊.

问题描述:

找出所有4位数的升序数和回文数,使用函数实现回文数和升序数的判断.用VB编程,马上啊.
1、单击“回文数”按钮,找出所有4位数中的回文数.
2、单击“升序数”按钮,找出所有4位数中的升序数.
3、使用函数实现回文数和升序数的判断.
1个回答 分类:综合 2014-10-12

问题解答:

我来补答
VB6.0版本的可以吗?
我用的是构成法.
Option Explicit
Dim a, b, c, d, n
Private Sub Command1_Click()
For a = 1 To 9
For b = 0 To 9
n = a * 1000 + b * 100 + b * 10 + a
List1.AddItem n
Next
Next
End Sub
Private Sub Command2_Click()
For a = 1 To 6
For b = a + 1 To 7
For c = b + 1 To 8
For d = c + 1 To 9
n = a * 1000 + b * 100 + c * 10 + d
List2.AddItem n
Next
Next
Next
Next
End Sub
上面用的是构成法.
判断的: 
Option Explicit
Dim s(4)
'回文数,用函数判断法
Private Sub Command1_Click()
Dim n As Integer
    For n = 1001 To 9999
         If (huiwenNun(n)) Then List1.AddItem n
    Next
End Sub
'采用数字分离法
Function huiwenNun(n As Integer) As Boolean
    Dim a, b, c, d
       a = Int(n / 1000)
        b = Int((n - a * 1000) / 100)
        c = Int((n - a * 1000 - b * 100) / 10)
        d = n - a * 1000 - b * 100 - c * 10
        If a = d And b = c Then huiwenNun = True
End Function
'升序数,没有重复数字的
Private Sub Command2_Click()
Dim n As Integer
    'For n = 1000 To 9999
    For n = 1234 To 6789
         If (sxNun(1234)) Then List2.AddItem n
   Next
End Sub
'与上面不用的数字分离方法.还可以“按位”提取数字
Function sxNun(n As Integer) As Boolean
    s(1) = Mid(n, 1, 1)
    s(2) = Mid(n, 2, 1)
    s(3) = Mid(n, 3, 1)
    s(4) = Mid(n, 4, 1)
    If s(1) < s(2) And s(2) < s(3) And s(3) < s(4) Then sxNun = True
End Function
 
 
展开全文阅读
剩余:2000
上一页:dc2inr3qec3r2
下一页:这样怎么写