%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% rand_func_demo.m
%
% purpose: demo different rand functions
%
% written by tancy 05/08/2017
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%% defination of rand in matlab
% rand: generate a number between 0 and 1

%% generate a single random number
rand_num = rand(1);
disp(rand_num)


%% generate multiple random numbers
% e.g. generate 5 random numbers
rand_5num = rand(1, 5);
disp(rand_5num)

%% generate 5 random numbers between 0 to 10, you multiply the random number by 10
multfactor = 10; 
randomArray = rand(1,5); % generate 5 numbers
result1 = multfactor * randomArray;
disp(result1)

%% generate random number from number A to number B
num_A = 5;
num_B = 10;
randomArray = rand(1,5);
result2 = num_A + (num_B - num_A) * randomArray;
disp(result2)

%% generate random integers between 0 and 10 
multfactor = 10; 
randomArray = rand(1,10); % generate 5 numbers
result3 = floor(multfactor * randomArray); % you can use floor, ceil, round to get the integers
disp(result3)

%% generate 5 random integers between 1 and 10 with no repeat number
% use randperm
result4 = randperm(10,5);
disp(result4)
