Numeri casuali

Può capitare che prima o poi ci si imbatta nella necessità di dover generare dei numeri casuali (in realtà pseudo-casuali), ovvero numeri scelti a caso dal computer, anche in questo caso ci viene in aiuto il linguaggio. Per ottenere un numero casuale contenuto tra 0 e N ci viene in aiuto la funzione RANDOM, che viene parametrizzata con il valore massimo che può raggiungere, quindi ipotizziamo di voler avere un numero casuale tra 0 e 5 allora dobbiamo parametrizzare la funzione così: random(5) e assegnare il valore ad una variabile. Per poter generare i numeri casuali prima bisogna inizializzare il generatore di numeri casuali. Per fare ciò utilizziamo la procedura RANDOMIZE. Vediamo ora un esempio pratico per capire meglio come si ottengono i numeri casuali. Ipotizzando di voler simulare il lancio di un dado (cioè i numeri casuali possono variare da 1 a 6), e ipotizziamo di aver dichiarato una variabile di tipo integer e di nome Dado, questo dovrebbe essere il codice da scrivere:


Randomize;

Dado:=Random(5)+1;

writeln('Il dado restituisce il valore: ', Dado);


Analizzando il codice vediamo che per prima cosa inizializziamo il generatore di numeri casuali, per secondo generiamo un numero casuale da 0 a 5 e poi lo incrementiamo di uno, per finire stampiamo il risultato a monitor. Ovviamente se dovevamo generare un numero che partisse da uno e arrivasse a 6 dovevamo per forza eliminare l'opzione 0 dai possibili risultati e parametrizzando random con 6 ciò non sarebbe stato possibile.



SMF 2.0.8 | SMF © 2011, Simple Machines
Privacy Policy
SMFAds for Free Forums
TinyPortal © 2005-2012

Go back to article