My Code Just Isn't Working.. for prime numbers

Ghosstt

New member
Joined
Oct 26, 2007
Messages
1
Programming Experience
Beginner
ok, so lets see... i am trying to make a program that generates prime numbers.. here is my code..

VB.NET:
Public Class Form1
    Dim intPrime As Integer = 1
    Dim bool As Boolean

    Private Sub btnStart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnStart.Click
        Dim intDivisor As Integer
        Dim intMod As Integer
        Dim strOutput As String
        bool = True

        Do While bool = True
            intPrime = intPrime + 1
            For intDivisor = 1 To intPrime
                intMod = intDivisor Mod intPrime
                If intMod <> 0 Then
                    strOutput = strOutput & intMod & vbCrLf
                    TextBox1.Text = strOutput
                    Application.DoEvents()
                End If
            Next
        Loop

    End Sub

    Private Sub btnPause_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPause.Click
        Bool = False
    End Sub
End Class
 
Last edited by a moderator:
Well, another way you can do it is:
VB.NET:
Public Class Form1
    Inherits System.Windows.Forms.Form
    Dim Finished As Boolean

Private Sub btnStart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnStart.Click
    Dim Primes(1000) As Integer
    Dim Count, Num, Found As Integer
    Dim PrimeList As String
    Dim PrimeNum As Boolean
    Finished = False
    'Header text for display
    PrimeList = "PRIMES:"
    Num = 2
    'Start of number sequence
    lblNum.Text = Num
    Found = 0
    'The first known prime
    Primes(0) = 2
    'Search routine loop
    Do
        Num += 1
        lblNum.Text = Num
        PrimeNum = True
        'Divide by known primes
        For Count = 0 To Found
            If Num Mod Primes(Count) = 0 Then
                'Quit when divisor found
                PrimeNum = False
                Exit For
            End If
        Next Count
        'If no divisor must be prime
        If PrimeNum Then
            Found += 1
            lblFound.Text = Found
            'Add to primes set
            Primes(Found) = Num
            PrimeList &= " " & Num
        End If
        Application.DoEvents()
    Loop Until Finished Or Found = 1000 'maximum number, change it to 'whatever
    txtOutPut.Text = PrimeList
End Sub

Private Sub btnStop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnStop.Click
    Finished = True
End Sub

Private Sub btnQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnQuit.Click
    End
    End Sub
End Class

Iam using a well sized text box to display the prime numbers... hope this helps
 
Back
Top