Borrar filtros
Borrar filtros

Random number vector with only two values

9 visualizaciones (últimos 30 días)
Sania Gul
Sania Gul el 23 de Sept. de 2024
Comentada: Sania Gul el 23 de Sept. de 2024
I want to generate 10 random numbers, but the value of these must be either 0 or pi=3.14. I have tried with randperm, randi, rand etc. but neither worked. Plz help me to resolve it.

Respuesta aceptada

Stephen23
Stephen23 el 23 de Sept. de 2024
Editada: Stephen23 el 23 de Sept. de 2024
Indexing is a basic MATLAB superpower. You can easily use indexing to select from a vector of any values:
V = [0,pi];
W = V(randi(numel(V),1,10))
W = 1×10
0 0 0 0 3.1416 0 0 3.1416 0 0
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
Multiplication also works for this special case with only two values, one of which is zero:
W = pi * randi([0,1],1,10)
W = 1×10
3.1416 3.1416 0 0 3.1416 3.1416 3.1416 0 0 3.1416
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>

Más respuestas (0)

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by