Non so dove ho sbagliato

di il
1 risposte

Non so dove ho sbagliato

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.

1 Risposte

  • Re: Non so dove ho sbagliato

    Prima di tutto

    - usa un titolo adeguato per i thread sul forum
    - utilizza i tag CODE per postare il codice

    Per il programma, non capisco come compili dato che ci sono anche errori di sintassi

    Intanto le variabili devono essere azzerate

    unsigned long int uno=0;

    e così via...

    Poi nella for alla fine c'è un ; di troppo alla fine, deve essere

    for (count = 1; count <= 6000; count++) {

    E in tutte le printf non ci va il ; ma la , magari con un ritorno a capo, così

    printf("1:%d\n", uno);
Devi accedere o registrarti per scrivere nel forum
1 risposte