Sorry if I'm bumping in on this very old conversation, and with such an irrelevant or inexperienced topic... But if I wish to skew my random numbers up, I use:
x=random(random(1))
Or if I wish to skew it downwards, I do:
x=1-(random(random(1)))
Is what I just said totally irrelevant, or does it have a point?
Zesterer
One problem I see pop up a lot is this idea people get that something is "more" random. You're not actually making your numbers "more" random because that doesn't really make sense. You are, however, altering the distribution. Now, random(random(1)) is the same thing as random(1) * random(1). We can analyze the distribution of this. Let X and Y be independent identically distributed random variables with a uniform distribution in the range [0, 1).
Now, we can introduce a random variable Z = X Y. Let's figure out what the distribution of this variable is. We'll start with the
CDF because that's easier to work with. So, by definition:
 = P(Z \leq z))
Where P(Z <= z) denotes the probability that Z is less than or equal to z. We can replace Z with its definition:
 = P(X Y \leq z))
Now, we can compute this probability by figuring out the area of the region bounded by 0 < x < 1, 0 < y < 1, and x y < z. We can actually turn this into an integral with respect to x. First, we note that the curve y = z / x intersects y = 1 at x = z. So we can split the area of the region into two parts. The first part is for x < z, in that case we just have a rectangle whose height is 1 and whose width is z, and the area of that is just 1*z = z. The area of the portion for x > z is given by this integral:
 = -z \ln z)
Adding these together we get the following:
 = z - z \ln z)
Which looks like this:
http://www.wolframalpha.com/input/?i=plot+z+-+z+ln+z+from+0+to+1
We can find the
PDF by taking the derivative of this:
 = \frac{d}{dz}(z - z \ln z) = 1 - (\ln z + 1) = -\ln z)
Now, the pdf of a uniform random variable in the range [0, 1) is just 1 (in that range, 0 elsewhere). So you can see how you're skewing the distribution by comparing them:
http://www.wolframalpha.com/input/?i=plot+-ln+z+and+1+from+0+to+1
So you're making it more likely for numbers less than about 0.368 to show up while making numbers greater than that less likely to show up.
Now, I don't want to give them impression that this is "wrong" it's not. If this is the kind of distribution you want, then it's perfectly okay. I just want to make sure that people really understand what it is that they're doing.