Improve company productivity with a Business Account.Sign Up

x
?
Solved

random numbers stay in "memory"

Posted on 2000-03-17
3
Medium Priority
?
199 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 150 total points
ID: 2628681
Add this at the beginning of your procedure:

Randomize(Timer)

Ture Magnusson
Karlstad, Sweden
0
 
LVL 14

Expert Comment

by:mcrider
ID: 2628709
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
ID: 2628750
Thanks, works like a charm.
0

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Introduction While answering a recent question (http://www.experts-exchange.com/Q_27402310.html) in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
When designing a form there are several BorderStyles to choose from, all of which can be classified as either 'Fixed' or 'Sizable' and I'd guess that 'Fixed Single' or one of the other fixed types is the most popular choice. I assume it's the most p…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

606 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