搜索
您的当前位置:首页正文

VB编程典例

来源:知库网
VB编程典例

1.判断一个数是否是幸运数(指凡前两位数字之和等于后两位数字之和的四位数).

Private Function xys(n As Integer) As Boolean Dim s As String, sum1 As Integer, sum2 As Integer s = CStr(n) For i = 1 To 2

sum1 = sum1 + Val(Mid(s, i, 1)) sum2 = sum2 + Val(Mid(s, i + 2, 1)) Next i

If sum1 = sum2 Then xys = True End Function

Private Sub Command1_Click() Dim i As Integer For i = 1000 To 9999

If xys(i) Then List1.AddItem i Next i End Sub

2.判断一个数是否是完数(一个数恰好等于它的因子之和).

Private Function ws(n As Integer) As Boolean Dim i As Integer, sum As Integer For i = 1 To n - 1

If n Mod i = 0 Then sum = sum + i Next i

If n = sum Then ws = True End Function

Private Sub Command1_Click() Dim i As Integer For i = 1 To 100

If ws(i) Then List1.AddItem i Next i End Sub

3.判断一个正整数是否为升序数.

Private Function sx(n As Integer) As Boolean Dim s As String, i As Integer s = CStr(n)

For i = 1 To Len(s) - 1

If Mid(s, i, 1) >= Mid(s, i + 1, 1) Then

'sx= False Exit Function End If Next i

sx = True End Function

Private Sub Command1_Click() Dim i As Integer

For i = 1000 To 9999

If sx(i) Then List1.AddItem i Next i End Sub

4.求两个数的最大公约数\\最小公倍数. 最大公约数:

Private Function gys(m As Integer, n As Integer) As Integer Dim r As Integer Do

r = m Mod n m = n n = r

Loop Until r = 0 'Loop While r <> 0 gys = m End Function

Private Sub Command1_Click() Dim m As Integer, n As Integer m = Val(Text1.Text) n = Val(Text2.Text) Text3.Text = gys(m, n) End Sub

最小公倍数:

Private Function gbs(m As Integer, n As Integer) As Integer Dim r As Integer, p As Long p = m * n Do

r = m Mod n m = n n = r

Loop Until r = 0 'Loop While r <> 0

gbs = p / m End Function

Private Sub Command1_Click() Dim m As Integer, n As Integer m = Val(Text1.Text) n = Val(Text2.Text) Text3.Text = gbs(m, n) End Sub

5.找出满足条件的三位同构数(X若出现在自己平方数的末三位,则X是同构数).

Private Function tgs(x As Integer) As Boolean Dim n As Long n = x ^ 2

If x = Val(Right(CStr(n), 3)) Then tgs = True End Function

Private Sub Command1_Click() Dim i As Integer For i = 100 To 999

If tgs(i) Then List1.AddItem i & \"^2=\" & i ^ 2 Next i End Sub

6.判断一个数是否为素数.

Private Function prime(x As Integer) As Boolean Dim i As Integer For i = 2 To Sqr(x)

'If x Mod i = 0 Then Exit Function 'Next i

If x Mod i = 0 Then Exit For

If i > Sqr(x) Then prime = True Next i

'prime = True End Function

Private Sub Command1_Click() Dim i As Integer For i = 100 To 999

If prime(i) Then List1.AddItem i Next i End Sub

7.统计字符串中0和1的个数.

Private Sub calc(s As String, sum1 As Integer, sum2 As Integer) Dim i As Integer For i = 1 To Len(s)

If Mid(s, i, 1) = \"1\" Then sum1 = sum1 + 1 Else

sum2 = sum2 + 1 End If Next i End Sub

Private Sub Command1_Click()

Dim s As String, sum1 As Integer, sum2 As Integer s = Text1.Text

Call calc(s, sum1, sum2) Text2.Text = sum1 Text3.Text = sum2 End Sub

8.计算某自然数所有因子之和.

Private Function yzh(n As Integer) As Integer Dim i As Integer For i = 1 To n - 1

If n Mod i = 0 Then yzh = yzh + i List1.AddItem i End If Next i End Function

Private Sub Command1_Click() Dim n As Integer

n = Val(Text1.Text) Text2.Text = yzh(n) End Sub

因篇幅问题不能全部显示,请点此查看更多更全内容

Top