Solved

Random number generator for even numbers only (500 points)

Posted on 2008-06-16
3
212 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

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
Introduction I have seen many questions in this Delphi topic area where queries in threads are needed or suggested. I know bumped into a similar need. This article will address some of the concepts when dealing with a multithreaded delphi database…
This video gives you a great overview about bandwidth monitoring with SNMP and WMI with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're looking for how to monitor bandwidth using netflow or packet s…
This tutorial demonstrates a quick way of adding group price to multiple Magento products.

758 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

21 Experts available now in Live!

Get 1:1 Help Now