Solving Rand Function MATLAB Homework

  • Thread starter Thread starter SteliosVas
  • Start date Start date
  • Tags Tags
    Function Matlab
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
3 replies · 3K views
SteliosVas
Messages
70
Reaction score
0

Homework Statement



The number of iterations it takes for the product of two random numbers to produce a number less than 1e-5.

Homework Equations

The Attempt at a Solution

while z < 1e-05
count1 = count + 1;
x = rand(1,1); %rand 1x1 matrix
z = floor(a + (b-a+1) * rand(b,1));
if z < 1e-05
break
end

endNow I keep getting an error saying:
Error using rand
Size inputs must be scalar.

Why is this?EDIT:

while 2
% randomIntegers < 1e-05
count1 = count1 +1;
randomIntegers = randi([-10,10],[20,1]);

if randomIntergars > 1e-05
break
end

end

I tried this and it's still not working
 
Last edited:
Physics news on Phys.org
Why do you want to produce random integers? I guess the random numbers are supposed to be floats between 0 and 1.
SteliosVas said:
while z < 1e-05
That looks like the opposite of what you want to do.
SteliosVas said:
z = floor(a + (b-a+1) * rand(b,1));
What does that line do? What are a and b? Why floor()?

rand(1,1) returns a 1x1-matrix of random numbers, which is just a random number. Anyway, the inputs have to be scalar, apparently your b is not a scalar - what is b?
 
Essentially what I want to do is generate two random numbers and their product being less than 1e-05.

That is all in trying to do.
 
"Two random numbers" is too unspecific. Dice rolls give random integers between 1 and 6 - they are random numbers, but clearly not those you want here because their product is never smaller than 1.