Salve ragazzi, avrei bisogno di un aiuto. Devo scrivere un programma che simuli il gioco della tombola. Ci sono 5 giocatori con un una sola cartella a testa; le cartelle sono generate casualmente seguendo le regole della tombola (massimo un numero per decina, tutti numeri diversi...). Il programma deve poi simulare l'estrazione di un numero e visualizzare quale dei cinque giocatori fa ambo, terno, quaterna, quintina e tombola. Sono riuscito a scrivere le function per generare correttamente le cartelle e i numeri da estrarre ma adesso non ho idea di come svolgere il resto della consegna. Vorrei qualche dritta su come continuare e magari la conferma che il codice che ho scritto fino ad ora sia corretto (ho testato diverse volte il codice e non ne ha sbagliata una, ma non si sa mai). Ecco cosa ho scritto per il momento:
void cartelle (int giocatore[3][5]){
srand((unsigned int)time(0));
int i, j, numero;
for(i = 0; i < 3; i++){
int a = 0, b = 19;
for(j = 0; j < 5; j++){
numero = rand()%(b - a) + a;
if(numero < 1 || numero > 90) j--;
else{
giocatore[i][j] = numero;
a = a + 20;
b = b + 20;
}
}
}
}
/* Le function swap e randomize sono utilizzate per disordinare l'array che contiene
* tutti i possibili numeri della tombola*/
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
void randomize(int arr[], int n) {
srand(time(NULL));
int i;
for(i = n-1; i > 0; i--) {
int j = rand() % (i+1);
swap(&arr[i], &arr[j]);
}
}
void main(){
int A[3][5], B[3][5], C[3][5], D[3][5], E[3][5];
int i, numero = 1, array[90], ambo = 0, terno = 0, quaterna = 0, quintina = 0, tombola = 0;
cartelle(A);
cartelle(B);
cartelle(C);
cartelle(D);
cartelle(E);
for(i = 0; i < 90; i++){
array[i] = numero;
numero++;
}
randomize(array, 90);
}
Grazie in anticipo