Bonjour à tous, je suis tombé sur ce petit défis et j'aimerais optimiser mon programme (moins de lignes ou de façon plus élégante) mais je n'ai plus d'idées.
Mon but et dans mon boucle de sortir des nombres aléatoires entre 0 et 9 et de les afficher uniquement s'ils sont pas sortis exemple : 6152231134 affichera : 615234. J'ai pensé à créer un tableau pour stocker les valeurs sorties et à le remplir uniquement s'il ne contient pas la valeur. Le programme est fonctionnel :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
int main()
{
    srand(time(NULL));
    int N=50,dedans=0,i,j,size=0;
    int* temp = calloc(N ,sizeof(int));
    for (i = 0; i < N ; i++) {
        int X = rand()%10;
        for(j=0;j<size && dedans!=1;j++){ //parcours notre tableau de valeur stockées, on sort si dedans == 1 
            if(temp[j]==X){
                dedans=1;
            }  
        }
        if(dedans==0){
                //s'il est pas dedans
                temp[size]=X;
                printf("%d",X);
                size++;
        }
        dedans=0;
    } 
    return 0;
}
PS: je free mon tableau