vendredi 14 octobre 2016

Generate random number between range including negative in javascript

I am trying to set a function that creates a random number between a range

I need to make it working with negative values so I can do

randomBetweenRange( 10,  20)
randomBetweenRange(-10,  10)
randomBetweenRange(-20, -10)

This is what I am trying, it is a bit confusing and at the moment randomBetweenRange(-20, -10) is not working..

function randomBetweenRange(a, b){
    var neg;
    var pos;

    if(a < 0){
        neg = Math.abs(a) + 1;
        pos = (b * 2) - 1;
    }else{
        neg = -Math.abs(a) + 1;
        var pos = b;
    }

    var includeZero = true;
    var result;

    do result = Math.ceil(Math.random() * (pos + neg)) - neg;
    while (includeZero === false && result === 0);

    return result;
}

How can I make it working?




Aucun commentaire:

Enregistrer un commentaire