# using rand to generate numbers

15 views (last 30 days)
PChoppala on 3 Sep 2013
Hi
I have a simple question. I understand that both a and b vectors (please see below) will generate 5 random numbers from 0 to 5 with an interval of 1 between each number. But I would like to know if there is any difference between vectors a and b or if they have the same meaning.
N=5;
a = [0:N-1]+rand(1,N)/N;
b = [0:N-1]+rand/N;
Thank you

the cyclist on 4 Sep 2013
Is this homework?
If so, I suggest you read
doc rand
and see what the difference is between the syntax
rand(1,N)
and
rand

PChoppala on 4 Sep 2013
Well, I do know the difference .. that
rand %gives a number between 0 and 1
rand(1,N) %gives N numbers between 0 and 1
But I wanted to know if there is any technical difference in vectors a and b. I guess they are the same, but wanted to confirm.
the cyclist on 4 Sep 2013
Here's a hint. Compare
diff(a)
to
diff(b)

Shashank Prasanna on 4 Sep 2013
Edited: Shashank Prasanna on 4 Sep 2013
Try executing it and seeing it for yourself.
rand just generats one random number and adds it to each element of the vector: [0:N-1]
where as rand(1,N) generates N random numbers and adds them element wise to the vector: [0:N-1]
They are obviously different. Is that what you are looking for?

#### 1 Comment

PChoppala on 4 Sep 2013
Yeah I understand this .. the more I think, the more easy it becomes .. guess this question should be deleted