Random number generation from uniform distribution

Ronan · Jun 14, 2022 · 2K views
Question
Good afternoon, I'm currently trying to generate random numbers from a uniform distribution, but I'm not sure how to input probabilities.   For example, Let S be uniformly distributed between 70 and 130: a=70; b=130; S=a+(b-a).*rand However, let's say we want to generate T which is uniformly distributed: between 0.1 and 1.0 (with probability 0.75) between 1.0 and 5.0 (with probability 0.25)   Is it possible to use the rand function as normal? i.e. a=0.1; b=1.0; c=5.0 T=([a+(b-a).*rand]*0.75)+([b+(c-b).*rand]*0.25) I appreciate any feedback.
Expert Answer
Profile picture of Kshitij Singh
Kshitij Singh PhD Expert
Answered Aug 23, 2026
N = 1000000;

a=0.1;
b=1.0;
c=5.0;

r1 = rand(N,1);
r2 = rand(N,1);

T=(a+(b-a).*r1).*(r2<=0.75) + (b+(c-b).*r1).*(r2>0.75);

figure
hist(T,0.105:0.01:4.995)

 

100% Run Guarantee 3-Hour Fast-Track Delivery

Need a Custom Version or Complete Simulation for This Problem?

Our 500+ PhD engineers build, debug, and optimize working MATLAB scripts and Simulink (.slx) models tailored to your exact assignment rubrics with zero plagiarism.

Tested on MATLAB R2024b / R2026a
Turnitin 0% Plagiarism Report
Free 7-Day Revisions Guarantee
Have a different question? Ask here

Get a Free Consultation or a Sample Assignment Review!