Main Content

Numeri casuali entro un intervallo specifico

Questo esempio mostra come creare un array di numeri casuali in virgola mobile estratti da una distribuzione uniforme nell'intervallo aperto (50, 100).

Per impostazione predefinita, rand restituisce valori normalizzati (tra 0 e 1) estratti da una distribuzione uniforme. Per modificare l'intervallo di distribuzione in un nuovo intervallo (a, b), moltiplicare ciascun valore per l'ampiezza del nuovo intervallo (ba) e spostare ciascun valore di a.

Per prima cosa, inizializzare il generatore di numeri casuali per rendere ripetibili i risultati di questo esempio.

rng(0,'twister');

Creare un vettore di 1000 valori casuali. Utilizzare la funzione rand per estrarre i valori da una distribuzione uniforme nell'intervallo aperto (50,100).

a = 50;
b = 100;
r = (b-a).*rand(1000,1) + a;

Verificare che i valori in r rientrino nell'intervallo specificato.

r_range = [min(r) max(r)]
r_range =

   50.0261   99.9746

Il risultato è compreso nell'intervallo aperto (50,100).

Nota

Alcune combinazioni di a e b rendono teoricamente possibile che i risultati includano a o b. In concreto, è estremamente improbabile che ciò accada.

Vedi anche

Argomenti complementari