Solved

random numbers stay in "memory"

Posted on 2000-03-17
3
189 Views
Last Modified: 2010-05-02
I wrote a simple applications that should generate random numbers between 1 and 49. All works
nice, but if I close the app and run it again, the same numbers are generated when I ran it first ( If I
keep genrating numbers, they appear to be random, but the same series pops back each time I run
the app)
I get the feeling that these numbers are kept somewhere. Even if I restart the PC, these series stay
the same. I don't save these generated numbers to disk, I just display them on a form ( as the
text.text)
Is there a function I should use to "flush" the memory or something???



Private Sub Command1_Click()
    Dim no1, no2, no3, no4, no5, no6 As Integer

complete1 = False
Do While complete1 = False
    no1 = Round(Rnd * 100)
    If no1 <= 49 And no1 > 0 Then
    complete1 = True
    End If
Loop
Text1.Text = no1

complete2 = False
Do While complete2 = False
    no2 = Round(Rnd * 100)
    If no2 <= 49 And no2 > 0 And no2 <> no1 Then
    complete2 = True
    End If
Loop
Text2.Text = no2

complete3 = False
Do While complete3 = False
    no3 = Round(Rnd * 100)
    If no3 <= 49 And no3 > 0 And no3 <> no2 And no3 <> no1 Then
    complete3 = True
    End If
Loop
Text3.Text = no3

complete4 = False
Do While complete4 = False
    no4 = Round(Rnd * 100)
    If no4 <= 49 And no4 > 0 And no4 <> no3 And no4 <> no2 And no4 <> no1 Then
    complete4 = True
    End If
Loop
Text4.Text = no4

complete5 = False
Do While complete5 = False
    no5 = Round(Rnd * 100)
    If no5 <= 49 And no5 > 0 And no5 <> no4 And no5 <> no3 And no5 <> no2 And no5 <> no1 Then
    complete5 = True
    End If
Loop
Text5.Text = no5

complete6 = False
Do While complete6 = False
    no6 = Round(Rnd * 100)
    If no6 <= 49 And no6 > 0 And no6 <> no5 And no6 <> no4 And no6 <> no3 And no6 <> no2 And
no6 <> no1 Then
    complete6 = True
    End If
Loop
Text6.Text = no6
End Sub

0
Comment
Question by:psimation
3 Comments
 
LVL 22

Accepted Solution

by:
ture earned 50 total points
Comment Utility
Add this at the beginning of your procedure:

Randomize(Timer)

Ture Magnusson
Karlstad, Sweden
0
 
LVL 14

Expert Comment

by:mcrider
Comment Utility
Ture is correct, you need to use the Randomize statement, however "Randomize(Timer)" is redundant.

All you really need to do is:

   Randomize

Directly from VB help page on Randomize:

"Randomize uses number to initialize the Rnd function's random-number generator, giving it a new seed value. If you omit number, the value returned by the system timer is used as the new seed value."


Cheers!®©
0
 
LVL 17

Author Comment

by:psimation
Comment Utility
Thanks, works like a charm.
0

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

There are many ways to remove duplicate entries in an SQL or Access database. Most make you temporarily insert an ID field, make a temp table and copy data back and forth, and/or are slow. Here is an easy way in VB6 using ADO to remove duplicate row…
The debugging module of the VB 6 IDE can be accessed by way of the Debug menu item. That menu item can normally be found in the IDE's main menu line as shown in this picture.   There is also a companion Debug Toolbar that looks like the followin…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now