# Pascal programming questions

Problem 1:
I learned the basics of Pascals and i decided to make a summer project of makeing an rpg like game. i was throwing down my ideas and i wanted the fight sequences to come up randomly when your walking around...i searched but i couldent find a command to pick a number at randome
so
number 1: i need to know if one of these commands exist
and
Number 2: if one doset exits i would like to ask for an idea or two how to make a randome like sequence so it isent ever 10 movements a fight sequence starts

This is the first problem i ran into so far but i am sure i will have others

store an integer variable "seed" and have a function rand that does "(a * seed + b ) mod c. a, b, and c are constants you pick. when you start the game set seed to some other number than it was the last time you started the game or else you get the same random numbers every time you run the program. You can set the seed with a value you get from the system clock.

Use randomize...it initializes the random number generator using as seed the timer...to get a random number use random,which gives you a number in [0,1)...use the "Help"...

ok i was looking though help which dident really help becuase it only told how to intiate a randome # gen i want to know how to alter it so there are only a few numbers so i can set a command to excute evrytime it lands on a certian number

if you could help me out i would really apreciate (i cant spell) it

Last edited:
GENIERE
I never used Pascal but if it has “Do Loops”, you can do something like this:

Let’s assume you only want numbers from 1 through 9 as the result.

The output random number may be a large number.

Let R= result of the random number generator.

Do while R>10
R=R/10
Loop

Whatever R was, it will be divided by 10 until it is less than 10

You may need to convert it to an integer, dependng on how you write your code.

thanks everyone i was able to get it under 10 and be a single digit.

If any one cares here is the code
begin
randomeize;
ran := randome
if ran >= 10 then
begin
repeat
ran :=ran/2;
untile ran < 10;
end;
str(ran,ran1)
ran2 := ran1;
write(ran2);