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:
codice:
#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;
}
}
}
}
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 tutti