Random number except number 7

Today I had this little problem. I needed to generate a random number from 1 to 30 and the result had to except a specific number (as in this example, any number from 1 to 30 except the number 7 )
The code is done now, it’s working as it should and I posted it in case someone else needs this same code.

var randomNumber:Number;
var minNumber:Number = 1;
var maxNumber:Number = 30;

function generateRandomNumber():void{
	randomNumber = Math.round(Math.random() * (maxNumber - minNumber)) + minNumber;
	if(randomNumber == 7){
		generateRandomNumber();
	}
	trace(randomNumber)
}
generateRandomNumber();

By the way, the code here is ActionScript 3 but if you remove “:void” you can use it in ActionScript 2 too 😉

Similar Posts

5 Comments

  1. //AS 3 version- just a little cleaner piece of code.
    var randomNumber:Number = generateRandomNumber(1, 30);

    function generateRandomNumber(p_max:Number, p_min:Number):Number {
    var randomNumber = (Math.random() * (p_max – p_min)) + p_min | 0;
    if(randomNumber == 7){ return generateRandomNumber(p_max, p_min); }
    return randomNumber;
    }

    trace(randomNumber);

  2. JohnnyG’s Code dind’t work in my computer, so I think the code should be:

    //AS 3 version- just a little cleaner piece of code.
    var randomNumber:Number = generateRandomNumber(1, 30);

    function generateRandomNumber(p_max:Number, p_min:Number):Number {
    var randomNumber = Math.round(Math.random() * (p_max – p_min)) + p_min;
    if(randomNumber == 7){
    return generateRandomNumber(p_max, p_min);
    }
    return randomNumber;
    }
    trace(randomNumber);

    Thanks JohnnyG!

  3. What didn’t work about it?
    Do you know what | 0 does? – (if floors your value)
    what value did you get back? what values did you feed it.
    You would have supply more information then … it didn’t work on my computer.

Leave a Reply

Your email address will not be published. Required fields are marked *