Código
void Combinacion(int *combinacion) //combinación es un vector { int i=0; int j=0; //Inicializamos los iteradores int num_aleatorio=0; //Variable donde guardamos el número aleatorio bool correcto=true; //Variable booleana para comprobar si num_aleatorio está repetido en el vector combinacion srand (getpid()); //Utilizamos srand() y no rand() porque éste último si ejecutamos varias veces nuestro //programa, la secuencia de números aleatorios se repite. Y utilizamos getpid() para que //con cada nuevo proceso se cree una secuencia de números distinta. //Asignamos 0 a todas las posiciones del vector combinacion para no generar números basura for(i=0; i < Total_num_apuesta; i++) { combinacion[i] = 0; } i=0; //Volvemos a inicializar la variable a 0 while(i < Total_num_apuesta) //Repetimos el bucle hasta conseguir 6 números aleatorios no repetidos { j=0; correcto=true; //Volvemos a inicializar las variables while(j < Total_num_apuesta && correcto==true) { if(combinacion[j] != num_aleatorio) { correcto=true; } else { correcto=false; } j++; } if(correcto == true) { combinacion[i] = num_aleatorio; i++; } } }
MOD EDIT: Agregadas etiquetas GeSHi.