我試圖寫一個程序,如果你輸入一個號碼,並點擊一個按鈕,程序就能確定號碼是否是一個素數(整除只1和本身)。困難素數程序.NET
當我輸入數字「5」(例如),則程序規定「是」這是一個質數。但是,當我輸入不是素數的「4」時,程序仍然表示是素數。
我不確定我哪裏錯了給出的「如果」語句和循環我寫的。我的代碼如下:
Public Class Form1
Private Sub btnCalculate_Click(sender As Object, e As EventArgs) Handles btnCalculate.Click
Dim iNum, iSum As Double
Dim isPrime As Boolean = True
iNum = Convert.ToInt32(tbxN.Text)
For i = 2 To (iNum - 1) Step 1
iSum = iNum Mod i
Next
If iSum = 0 Then
isPrime = False
lblAnswer.Text = "No"
Else
isPrime = True
lblAnswer.Text = "Yes"
End If
End Sub
End Class
我相信這可能是我的「如果」語句的問題,而且在循環的程序只使用最後一個值,使素數的決定,但是,我需要它如果iSum是EVER 0,那麼它不是Prime。如果iSum從不爲0,那麼它就是Prime。
我該如何解決這個問題?謝謝!
需要檢查的循環內。如果你發現它不是素數,你可以提早停下來。 「 – SLaks