
Efe O. answered 08/05/19
Princeton grad & NYU PhD math tutor
rand() produces a uniformly random number between 0 and 1. Distribution of rand()*rand() though will not be uniform but will be right-skewed (smaller numbers have more probability) as it is the product of two numbers less than one. In that sense rand() is more random because you know rand()*rand() have more probability favoring smaller numbers. In other words entropy (measure of randomness) of rand() is higher.