我试图使用round
和rand
函数生成-2和5范围内的随机整数。我能够生成一个随机整数,但它总是返回一个负值和一个零。在MATLAB中生成负数和负数范围内的随机整数
round(rand(1)*-5)
我试图使用round
和rand
函数生成-2和5范围内的随机整数。我能够生成一个随机整数,但它总是返回一个负值和一个零。在MATLAB中生成负数和负数范围内的随机整数
round(rand(1)*-5)
继承人也是这样做的一种可能的方式:
% generate 1000 random integers between -2 and 5
R = ceil(rand(1000,1)*8)-3;
% display MIN/MAX
disp(min(R));
disp(max(R));
请注意,这是有效的,因为@ thomas使用'ceil',因此必须增加1(因此使用8而不是7)。 这是可行的,因为rand()永远不会生成真0或1.否则,如果生成true 0,则此公式有时(以低概率)生成数字-3。 –
“返回负值和零”。这是因为您将0到1之间的数字乘以负数。输出将始终为负值。 – TroyHaskin
我该怎么办? – PRCube