Esercitazioni
del
corso
di Laboratorio di Calcolo
numeri pseudo-random
- create la cartella di lavoro e spostatevici
- predisponete un file Risposte con all'interno i vostri nomi
nel quale scriverete le vostre osservazioni e le risposte alle domande
- prima parte dell'esercitazione
generazione di
numeri pseudo-casuali distributiti in modo normale
- scaricate il programma reiezione.cc che
utlizza il metodo della reiezione
- scaricate il programma limitecentrale.cc che
sfrutta il torema del limite centrale
- scaricate il file
histo.h
- compilate, eseguite, confrontate e discutete i
risultati ottenuti con i due programmi
- seconda parte dell'esercitazione: uso delle funzioni rand e srand
- scrivete un
programma che simuli il lancio di un dado
- dovra' esserci una classe Dado che tra i suoi metodi abbia il metodo lancioDado che
usa la funzione rand() e
ritorna un numero intero compreso da 1 e 6
- il programma main inzialmente istanziera' un solo
oggetto dado ed effettuera' 10 lanci stampandone l'esito sullo schermo
- verificate che girando piu' volte il programma
la sequenza risulta essere sempre la stessa
- inserite nel costruttore di Dado la chiamata
alla funzione di inizializzazione srand(1)
- verificate che girando piu' volte il programma
la sequenza risulta ancora essere sempre la stessa
- sostituite srand(1) con srand(5)
- verificate che girando piu' volte il programma
la sequenza risulta diversa dalla precedente ma ripetibile
- sostituite srand(1) con srand(time(0))
- verificate che girando piu' volte il programma
la sequenza cambia sempre.
- domanda: sapendo che
per evitare situazioni non
facilmente controllabili
la sequenza di numeri va inzializzata una
sola volta durante l'esecuzione di un programma
la chiamata a srand sta bene nel costruttore di Dado o andrebbe messa altrove?
- terza parte dell'esercitazione: piu` dadi
- scrivete un secondo programma che instanzi
un numero N di oggetti Dado con N a scelta dell'utente
- create un istogramma con un numero di bin pari a
6xN da 0.5 a 6xN+0.5
- riempitelo con la somma degli esiti di un numero elevato di lanci di N dadi
- cosa osservate al crescere di N?