How can I generate a random number that is negative or positive and between two other values?

193 visualizzazioni (ultimi 30 giorni)
I need to write a function that generates two numbers that are between the negative and positive values of an integer. For example, if I call the function and input 7 it should generate two random numbers between -7 and +7. I can't figure out a way to use the randi function because the values I need can't be just integers.

Risposta accettata

Walter Roberson
Walter Roberson il 20 Nov 2015
Hint: rand()-1/2 is in the range -1/2 to +1/2
  1 Commento
Jacob
Jacob il 11 Ott 2023
if you a number x
generating random between -x and x
x = 7;
for i = 1:x*2
z(i) = (2*x)*(rand(1)-.5);
end
disp(z)
2.5026 1.8492 0.0427 -1.6578 5.2690 5.5979 -2.9920 -6.5039 6.2270 -1.6916 -3.8918 5.8560 1.9215 -6.7670

Accedi per commentare.

Più risposte (2)

Rahul Gulia
Rahul Gulia il 22 Gen 2020
>> randi([-2,2],3,3) will give the desired output.
Thanks for pointing out my mistake @ Walter Roberson .

Hayatullahi Adeyemo
Hayatullahi Adeyemo il 19 Nov 2017
You can use visit here

Categorie

Scopri di più su Random Number Generation in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by