Solved

Random number generator for even numbers only (500 points)

Posted on 2008-06-16
3
215 Views
Last Modified: 2010-04-05
I need to quickly generate a random number between 1000 and 65000 but it must be even.  

I am using Delphi 6.  

I am giving the maximum 500 points as this is urgent.  Many thanks for your help.
0
Comment
Question by:rincewind666
3 Comments
 
LVL 14

Accepted Solution

by:
SteveBay earned 500 total points
ID: 21796928
I think this is what you want:
function TForm1.RandEven: Integer;

begin

     Randomize;

     repeat

          Result :=  (Random( 64000 ) + 1000);

     UNtil (Result Mod 2) = 0
 

end;

Open in new window

0
 

Author Comment

by:rincewind666
ID: 21797022
SteveBay, many thanks for your help.  Greatly appreciated.
0
 
LVL 2

Expert Comment

by:TheVanter
ID: 21797079
Randomize;
numberwanted := Random(500 + random(32000)) * 2;

The randomize is needed to mix up the pseudo-random numbers generated by the time.

or for a variable even range:
function randomeven(min, max: double): double;

var range, tmp : double;

  begin

  Randomize;

  if min > max then

    begin

    tmp := min;

    min := max;

    max := tmp;

    end;

  min := min / 2;

  max := max / 2;

  range := max - min;

  randomeven := (min + Random * range) * 2;

  end;

Open in new window

0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Delphi 2010 Export to pdf 2 284
loading dll from external path 1 209
Mydac connection data base issue 3 135
Newbie Thread Programming 1 139
This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…
A company’s greatest vulnerability is their email. CEO fraud, ransomware and spear phishing attacks are the no1 threat to a company’s security. Cybercrime is responsible for the largest loss of money to companies today with losses projected to r…

932 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

10 Experts available now in Live!

Get 1:1 Help Now