MATLAB Answers

how to write the randn' s code with just using rand and CLT

1 view (last 30 days)
alireza kooshafar
alireza kooshafar on 19 Feb 2016
Answered: jgg on 19 Feb 2016
I wrote this code but I didn't get the correct answer from it. i don't know where the problem is. thank for help
clc
clear all
m = input( 'please enter the number of LINES:');
n = input( 'please enter the number of ROWS:');
y = zeros(m,n);
G = zeros(m,n);
x = rand(m,n);
y= 0.2*x+32;
s(1)=y(1);
s(m*n)=sum(sum(y));
for i= 3: m*n
s(i-1)= s(i-2) + y(i-1);
end
G = zeros(m,n);
for i= 1:m*n
G(i) = s(i)/(i) ;
end
disp(G)
hist(G)
  4 Comments
jgg
jgg on 19 Feb 2016
If you don't care about the method, see the answer below.

Sign in to comment.

Accepted Answer

jgg
jgg on 19 Feb 2016
Since you don't actually want to use the CLT, then inverse sampling is your solution.
notrandn = @(n,m)(norminv(rand(n,m),0,1));
out = notrandn(10000,1);
out2 = randn(10000,1);
ecdf(out)
hold on
ecdf(out2)

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by