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 (b – a) 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.