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
    1. scaricate il programma reiezione.cc che utlizza il metodo della reiezione
    2. scaricate il programma limitecentrale.cc che sfrutta il torema del limite centrale
    3. scaricate il file histo.h
    4. compilate, eseguite, confrontate e discutete i risultati ottenuti con i due programmi
  • seconda parte dell'esercitazione: uso delle funzioni rand e srand
    1. scrivete un programma che simuli il lancio di un dado
    2. 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
    3. il programma main inzialmente istanziera' un solo oggetto dado ed effettuera' 10 lanci stampandone l'esito sullo schermo
    4. verificate che girando piu' volte il programma la sequenza risulta essere sempre la stessa
    5. inserite nel costruttore di Dado la chiamata alla funzione di inizializzazione srand(1)
    6. verificate che girando piu' volte il programma la sequenza risulta ancora essere sempre la stessa
    7. sostituite srand(1) con srand(5)
    8. verificate che girando piu' volte il programma la sequenza risulta diversa dalla precedente ma ripetibile
    9. sostituite srand(1) con srand(time(0))
    10. verificate che girando piu' volte il programma la sequenza cambia sempre.
    11. 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
    1. scrivete un secondo programma che instanzi un numero N di oggetti Dado con N a scelta dell'utente
    2. create un istogramma con un numero di bin pari a 6xN da 0.5 a 6xN+0.5
    3. riempitelo con la somma degli esiti di un numero elevato di lanci di N dadi
    4. cosa osservate al crescere di N?