Home Insegnanti Contattami Portfolio

Funzione rand()

Descrizione

Documentazione Ufficiale:

https://cplusplus.com/reference/cstdlib/rand/

Vediamo come generare numeri casuali in C++. Fulcro del nostro lavoro sarà la funzione rand() la quale viene utilizzata per generare un numero compreso nell'intervallo tra 0 e RAND_MAX, dove RAND_MAX è un valore che cambia a seconda del compilatore usato (in genere 32767).

Come generare valori in un range specifico

v1 = rand() % 100;         // v1 in the range 0 to 99
v2 = rand() % 100 + 1;     // v2 in the range 1 to 100
v3 = rand() % 30 + 1985;   // v3 in the range 1985-2014

Esempio pratico

#include <iostream>
using namespace std;

int main () {
        
    // inizializzazione
    srand ((unsigned) time (NULL));
    
    int v;

    // Genera numeri casuali qualsiasi
    for (int i=0; i<10; i++) {
        v = rand();
        cout << v << " ";
    }

    cout << endl;

    // Genera numeri casuali da 1 a 5
    for (int i=0; i<10; i++) {
        v = rand() % 5 + 1;
        cout << v << " ";
    }
    
    cout << endl;

    // Genera numeri casuali da 10 a 19
    for (int i=0; i<10; i++) {
        v = rand() % 10 + 10;
        cout << v << " ";
    }
    
    cout << endl;

    return 0;
}