Ayuda!!!! Números aleatorios sin repetir en C!!!
Publicado por Maria (1 intervención) el 02/07/2018 13:12:35
Ayuda!!!! Tengo que correr números aleatorios, que me permitan realizar un sorteo
(esto es migrando datos de un txt pero aquí va código resumido)
El caso es que estos números no pueden repetirse por lo que tengo que guardarlos en un vector de reptidos
No le encuentro la vuelta y me sigue mostrando números repetidos!!!
En qué estoy errando??????
GRACIASSSS
(esto es migrando datos de un txt pero aquí va código resumido)
El caso es que estos números no pueden repetirse por lo que tengo que guardarlos en un vector de reptidos
No le encuentro la vuelta y me sigue mostrando números repetidos!!!
En qué estoy errando??????
GRACIASSSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <time.h>
int Repeticiones(int alea, int vrep[])
{
int i;
int stop=0;
for(i = 0; (i < 8 && stop==0); i++)
{
if (vrep[i]==alea)
stop=1;
}
return stop;
}
int main()
{
srand(time(0));
int vrepetidos[8]={-1-1,-1,-1,-1,-1,-1,-1};
int Bombo[4][8]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32};
int i, j, k=0, nro;
int grupos[8][4];
int fstop;
for(i=0;i<4;i++) {
for(j=0;j<8;j++){
do{
nro=rand()%8;
fstop=Repeticiones(nro, vrepetidos);
}
while (fstop);
printf("El equipo sorteado es: %d\n", nro);
grupos[j][i]=(Bombo[i][nro]);
vrepetidos[j]=nro;
}
for (j=0;j<8;j++){
vrepetidos[j]=-1;
}
}
return 0;
}
Valora esta pregunta
0