Research randi, fix, round, ceil, floor functions. • Can you generate a random integer number without using randi?

8 visualizaciones (últimos 30 días)
Help me please
  1 comentario
Medu Segar
Medu Segar el 24 de Oct. de 2020
Research randi, fix, round, ceil, floor functions.
Can you generate a random integer number without using randi?
If the answer is yes, how?
If the answer is no, why not?
In this

Iniciar sesión para comentar.

Respuesta aceptada

Ameer Hamza
Ameer Hamza el 24 de Oct. de 2020

Más respuestas (1)

Walter Roberson
Walter Roberson el 24 de Oct. de 2020
Yes, you can. You can use rand() and typecast the results to uint64 and that will be an integer.
The question only asks about creating an integer, and does not impose any restrictions about range of the integers or that the integers produced must be sampled consecutively or that the sampling must follow any particular distribution or that the sampling must be unbiased.
Caution: I know what the expected answer is to the question, but the techniques that they are hinting at are not unbiased! If you look carefully at the range of floating-point numbers that rand can produce, you will find that it cannot produce the minimum or maximum number in the nominal range, and that introduces a bias to the numbers.
  1 comentario
Walter Roberson
Walter Roberson el 24 de Oct. de 2020
With careful programming the bias can be overcome if the range of numbers is 2 3 5 53 157 1613 2731 8191 or any product of those used no more than once each.

Iniciar sesión para comentar.

Categorías

Más información sobre Logical en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by