找出數值是否為質數-IsUnDivNum:

  最近常收到一些來信,都是詢問有關檢查質的問題,因此站長在此開了一個新的單元,我們可以自己寫一個函數來判斷一個數值是否為質數:

Private Function IsUnDivNum(ByVal Number As Integer) As Byte
'1 = 是質數
'2 = 不是質數
'3 = 輸入錯誤
Dim lDiv As Integer
Dim rDiv As Integer
 If Number <= 1 Then
  IsUnDivNum = 3
  Exit Function
 End If
 If Number = 2 Then IsUnDivNum = 1
 Number = Fix(Number)
 For lDiv = 2 To Number - 1
  If Number Mod lDiv = 0 Then
   IsUnDivNum = 2
   Exit Function
  End If
 Next lDiv
 IsUnDivNum = 1
End Function

Private Sub Command1_Click()
'用法範例:
On Error GoTo ERH
 任意一個數 = InputBox("請入一個數目", "檢查質數")
 Select Case IsUnDivNum(任意一個數)
  Case 1
   MsgBox "是質數"
  Case 2
   MsgBox "不是質數"
  Case 3
   MsgBox "輸入錯誤"
 End Select
Exit Sub
ERH:
 MsgBox "輸入錯誤"
End Sub

範例可到VB範例單元下載


上一頁