
Come generare numeri casuali su Octave
In questa lezione ti spiego come generare un numero casuale su Octave con qualche esempio pratico
Cos'è un numero casuale? E' un numero estratto a caso da un insieme di numeri. E' anche detto numero random.
Su Octave puoi generare un numero casuale usando il comando rand()
Il comando rand() estrae di default un numero a caso tra 0 e 1
>> rand()
ans = 0.59520
Per generare un numero reale tra 0 e 10 digita rand()*10
>> rand()*10
ans = 7.9405
Per generare un numero reale tra 0 e 100 digita rand()*100
>> rand()*100
ans = 50.618
Per generare un numero reale tra 18 e 30 digita rand()*12+18
>> rand()*12+18
ans = 27.996
Se vuoi generare un numero casuale intero hai due possibilità.
Puoi arrotondare il risultato della funzione rand() con la funzione round().
>> round(rand()*10)
ans = 9
In alternativa puoi usare il comando randi() inserendo il valore massimo tra le parentesi tonde
>> randi(10)
ans = 6
Il comando randi() estra un numero casuale tra 1 e il valore massimo che hai indicato (10)
Per estrarre un numero intero nell'intervallo compreso tra 18 e 30 digita l'intervallo tra parentesi quadre randi([18,30])
>> randi([18,30])
ans = 27
Puoi anche creare un vettore composto da numeri reali casuali
Ad esempio, per definire un vettore casuale composto da tre elementi digita rand(3,1)
>> rand(3,1)
ans =
0.83541
0.32661
0.96998
Se vuoi creare un vettore casuale composto da numeri interi casuali tra 1 e 10 digita randi(10,3,1)
Il primo valore (10) è il valore massimo mentre il secondo (3) e il terzo (1) sono il numero di righe e di colonne dell'array.
>> randi(10,3,1)
ans =
8
2
7
In questo modo puoi anche creare una matrice di numeri casuali.
Ad esempio per definire una matrice quadrata di numeri interi casuali tra 1 e 10 con tre righe e tre colonne digita randi(10,3,3)
>> randi(10,3,3)
ans =
5 7 4
2 1 6
1 10 7
Se vuoi creare la stessa matrice usando dei numeri reali casuali digita rand(3,3)*10
>> rand(3,3)*10
ans =
7.837730 2.168224 0.083629
6.934926 1.929531 5.050613
9.045520 2.163601 3.164065
Se questa lezione di StemKB ti ha aiutato, continua a seguirci.