Ciao a tutti, sto lavorando ad un programma che mi estragga 21 numeri casuali che però non si devono ripetere per un gioco di carte, fino ad ora sono riuscito a scrivere questo:
tralasciando le variabili iniziali che mi servono per un procedimento che devo fare dopo.. con questo codice i numeri spuntano diversi soltanto che solo 2 rimangono uguali.. è un problema del srand o è il codice che non funge? grazie a tutticodice:#include <stdlib.h> #include <time.h> #include <stdio.h> int a[21],b,e,f,g,h,i,l,c,cont; main() { c=1; srand((unsigned)time(NULL)); a[0]=rand() % 70+1; for(b=1;b<21;b=b+1) { a[b]=rand() % 70+1; while(c!=0) { c=0; for(cont=b;cont>-1 || c!=0;cont=cont-1) { if(a[cont]==a[cont-1]) { a[cont]=rand() % 70+1; c=1; } } } }![]()

Rispondi quotando