rng(seed)函數用於控制隨機數的生成。
rng(seed)使用非負整數seed為隨機數生成函數提供種子,以使得rand、randi和randn生成可預測的數字序列。
使用rng(seed)時,若seed相同,則兩次生成的隨機數序列相同。
1 num = 5; 2 rng(20211104); 3 array1 = randperm(num); //生成的序列是從1到num不重復的數據
運行以上代碼時,第一次運行和第二次運行結果相同,為:
1 array1 = [5,2,3,4,1]
rng(seed)函數設置的seed不同,則生成的隨機數據也不同。
1 num = 5; 2 rng(20211105); 3 array2 = randperm(num);
運行結果為:
1 array2 = [4,5,2,3,1]
rng(seed)函數中,若seed設置相同,但是生成的隨機數據的個數不同,結果也會有差異。
1 num = 6; 2 rng(20211105); 3 array3 = randperm(num);
運行結果為:
1 array3 = [4,6,5,2,3,1]