Sono nuovo alla programmazione e ho scritto un programma semplicissimo per imparare la funzione srand della libreria time.
Il programma è il seguente:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main (void){
unsigned long int count;
unsigned long int uno;
unsigned long int due;
unsigned long int tre;
unsigned long int quattro;
unsigned long int cinque;
unsigned long int sei;
for (count = 1; count <= 6000; count++;){
srand(time(NULL));
int faccia = rand()%6 + 1;
switch (faccia){
case 1:
uno++;
break;
case 2:
due++;
break;
case 3:
tre++;
break;
case 4:
quattro++;
break;
case 5:
cinque++;
break;
case 6:
sei++;
break;
}
}
printf ("1:%d"; uno);
printf ("2:%d"; due);
printf ("3:%d"; tre);
printf ("4:%d"; quattro);
printf ("5:%d"; cinque);
printf ("6:%d"; sei);
printf ("sum:%d"; uno+due+tre+quattro+cinque+sei);
}
secondo il mio ragionamento dovrebbe essere scritti i numeri delle volte che esce 1, 2, 3, 4, 5, 6 e la somma che ovviamente è 6000; e invece no. Infatti dopo averlo provato è successo che la somma era uguale ad un numero altissimo e alcuni numeri erano uguali a 0 e altri casini simili.