Salve, oggi vi spiegherò come generare numeri casuali in python.
Vi riporto la spiegazione del mio manuale:
Poi viene chiesto di fare questo esercizio:
Io ho scritto questo codice:
Da "inventare" non è semplicissimissimo, ma da leggere sì... Se comunque non capite qualcosa chiedete pure
Vi riporto la spiegazione del mio manuale:
La maggior parte dei programmi fanno la stessa cosa ogni volta che vengono
eseguiti e sono detti per questo deterministici. Di solito un programma deter-
ministico ` una cosa voluta in quanto a parit` di dati in ingresso ci attendiamo
e
a
lo stesso risultato. Per alcune applicazioni, invece, abbiamo bisogno che l’esecu-
zione sia imprevedibile: i videogiochi sono un esempio lampante, ma ce ne sono
tanti altri.
Creare un programma realmente non deterministico (e quindi imprevedibile) `
e
una cosa piuttosto difficile, ma ci sono dei sistemi per renderlo abbastanza ca-
suale da soddisfare la maggior parte delle esigenze in tal senso. Uno dei sistemi `
e
quello di generare dei numeri casuali ed usarli per determinare i risultati prodot-
ti dal programma. Python fornisce delle funzioni di base che generano numeri
pseudocasuali: questi numeri non sono realmente casuali in senso matematico
ma per i nostri scopi saranno pi` che sufficienti.
u
Il modulo random contiene una funzione chiamata random che restituisce un
numero in virgola mobile compreso tra 0.0 (compreso) e 1.0 (escluso). Ad ogni
chiamata di random si ottiene il numero seguente di una lunga serie di numeri
pseudocasuali. Per vedere un esempio prova ad eseguire questo ciclo:
Codice:import random for i in range(10): x = random.random() print x
Poi viene chiesto di fare questo esercizio:
Esercizio: tenta di generare un numero casuale compreso tra il
LimiteInferiore (compreso) ed il LimiteSuperiore (escluso).
Io ho scritto questo codice:
Codice:
import random
def CalcolaR ():
i = 0
while i < 4:
x = random.random ()
if x > 0.5:
print x
i += 1
else:
print "(Qui ci sarebbe stato un numero minore di 0.5...)"
CalcolaR ()
Da "inventare" non è semplicissimissimo, ma da leggere sì... Se comunque non capite qualcosa chiedete pure