English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

麻煩大家
我需要一個VB的程式

例如
輸入20
將會跑出2*2*5

因為急需
麻煩大家了>"<

2006-12-22 20:45:01 · 1 個解答 · 發問者 健銘 1 in 電腦與網際網路 程式設計

非常謝謝W.J.S大哥的幫忙^^
不過.....
為什麼小弟將程式弄上去後
卻跑不出來呢?

2006-12-23 03:41:41 · update #1

是6.0的啊@@"
不知道WJS大哥可以弄成檔案寄給我嗎@@
weppewaco1985@hotmail.com
不好意思>"<......

2006-12-23 12:11:55 · update #2

感謝W.J.S大哥的幫忙^^
我有將程式傳給我姊弄
她說弄得出來
我弄不出來的原因
可能當時她在家裡的電腦安裝過程有出一些問題
我想應該是這個原因才跑不出來的吧
這樣子就可以不用再麻煩你傳檔案給我了

非常感謝你幫我寫出這個程式
謝謝^^

2006-12-24 06:12:08 · update #3

1 個解答


'版本VB6.0
Private Sub Command1_Click()
Dim S As String, N As Long

Do
S = InputBox("請輸入1個正整數", , 20)
If S = "" Then Exit Sub
Loop Until IsNumeric(S)
N = Abs(Int(S)): Cls
Print N; "= "; PCD(N)
End Sub

Function PCD(ByVal N As Long) As String '列出質因數
Dim P As Long, S As String

Do
P = isPrime(N)
If P Then
S = S & P & "*"
N = N / P
Else
S = S & N
PCD = S
Exit Do
End If
Loop
End Function
Function isPrime(N As Long) As Long
Dim I&, D&

'判斷是否為質數 若是質數傳回0 若不是則傳回第一個因數
If N > 2 Then
If N Mod 2 = 0 Then isPrime = 2: Exit Function
For I = 3 To Int(Sqr(N)) Step 2
D = N Mod I
If D = 0 Then isPrime = I: Exit Function
Next
End If
End Function


2006-12-23 11:18:19 補充:
不會吧,我跑沒問題ㄚ,你的版本是VB6還是VB.NET?這個Code是VB6的.

2006-12-22 22:16:11 · answer #1 · answered by W.J.S. 7 · 0 0

fedest.com, questions and answers