Quote:
|
Originariamente inviato da Piojolopez2406
ora ho necessitā di copiare nella posizione della prima carta la seconda e viceversa
|
Codice:
int idx1, idx2;
struct carta tmp;
srand ((unsigned int) time (NULL));
idx1 = rand () % 40;
idx2 = rand () % 40;
tmp = mazzetto[idx1];
mazzetto[idx1] = mazzetto[idx2];
mazzetto[idx2] = tmp;
Nota che:
a) Visto che hai 40 carte, gli indici vanno da 0 a 39 (per quello % 40 e non % 41).
b) Alla fine dell'array devi mettere ....{10,"spade"
}};
c) L'operazione di modulo sul valore di rand() non offre una ottima pseudo-casualitā (leggi
<qui>).