vb.net统计回文数 vb统计数字个数

VB编程求出100~999之间的所有回文数,并按行输出

首先说明什么是回文数:左右对称的自然数称回文数。如121,4224,13731等你所出的题目是求三位数以内的所有回文数,所以只要判断第一位和第三位的数字是否一样,一样则为回文数。代码如下:Private Sub Command1_Click()

创新互联公司专注于肥西网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供肥西营销型网站建设,肥西网站制作、肥西网页设计、肥西网站官网定制、小程序开发服务,打造肥西网络公司原创品牌,更为您提供肥西网站排名全网营销落地服务。

For i = 100 To 999 '100到999循环

a$ = Trim$(Str(i)) '转换成字符串

b = Left$(a$, 1) '截取左边第一位

d = Right$(a$, 1) '截取右边第一位

If b = d Then '判断左右是否相等,相等既是回文数.

T1.Text = T1 + Str(i)

End If

Next

End Sub

VB中设计算法,判断某一个数是不是回文数(用文字叙述就可以了)

2种方法,

1,是使用VB自带的函数StrReverse , 一个数字,被翻过来以后,还和原数字相同,就可以判断是回文数了

2.使用循环,每次都2端取数字,都相同,就可以判断为回文数, 当有不同时,跳出循环,不是回文数

VB.NET 编写函数过程IsH(n) 判断是否为回文数

你的i = Len(Str(a))会出问题。

If i 1 Then

Return True

End If

这个返回在if内部,当条件不满足将导致函数无返回。

以下代码仅供参考:

Function IsH(ByVal a As Long) As Boolean

Dim i As Long, j As Long, t As String

t = a.ToString

i = t.Length

Select Case i

Case 1

Return True

Case 2

If Mid(t, 1, 1) = Mid(t, 2, 1) Then Return True Else Return False

Case 3

If Mid(t, 1, 1) = Mid(t, 3, 1) Then Return True Else Return False

Case Else

For j = 1 To i \ 2

If Mid(t, j, 1) Mid(t, i - j + 1, 1) Then Return False

Next j

End Select

Return True

End Function

VB 回文数

在数学中也有这样一类数字有这样的特征,成为回文数(palindrome number)。

设n是一任意自然数。若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。例如,若n=1234321,则称n为一回文数;但若n=1234567,则n不是回文数。

注意:

1.偶数个的数字也有回文数124421

如:1234321

Len(s) / 2=7/2=3.5

k = 1,Mid(s, k, 1)=1,Mid(s, (Len(s) - k + 1), 1)=Mid(s, (7 -1 + 1), 1)=1

k = 2,Mid(s, k, 1)=2,Mid(s, (Len(s) - k + 1), 1)=Mid(s, (7 -2 + 1), 1)=2

……

如果k = 3,为假,就退出循环,

If k Len(s) / 2 Then

k=3 Len(s) / 2 =3.5


分享标题:vb.net统计回文数 vb统计数字个数
分享链接:http://scyanting.com/article/hjsgpe.html