DÉDUCTEUR

Signaler
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Messages postés
966
Date d'inscription
samedi 3 avril 2004
Statut
Membre
Dernière intervention
4 mars 2010
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/43940-deducteur

Messages postés
966
Date d'inscription
samedi 3 avril 2004
Statut
Membre
Dernière intervention
4 mars 2010
4
Autre solution :

en déclaration :
static int b1[]={..};
...
static int b6[]={...};
static int* main_b[6]={b1,b2,b3,b4,b5,b6};

Puis dans le code :
for(i=0;i<32;i++) sprintf(lk," %d ",main_b[level][i]);


Sinon j'ai bien aimé.
Messages postés
56
Date d'inscription
vendredi 14 avril 2006
Statut
Membre
Dernière intervention
1 février 2009

ELSE IF, pas besoin de tester encore si on a trouvé la valeur, surtout dans une boucle.

le but de cette boucle est d' accumuler 32 chiffre integer
dans un buffer char

strcat rajoute a la fin du buffer un nombre

for i = 0 i < 32 i++

example i=0 buffer = 1
i=1 buffer = 1 3
i=2 buffer = 1 3 5
..
..
i=32 buffer = 1 3 5 7 .. ... jusqu'a 32


ou j aurais pus faire au lieu d une boucle

if(level==5) sprintf(buffer," %d %d %d %d %d %d %d %d %d %d %d %d",b6[0],b6[1],b6[2],b6[3],b6[4],b6[5],b6[6],b6[7] 32 fois

-----------------------------
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
29
strcpy(buffer,"");
buffer[0] = 0; pas aussi bien sans boucle strcy ?

for(i=0;i<32;i++) {
if(level==0) sprintf(lk," %d ",b1[i]);
if(level==1) sprintf(lk," %d ",b2[i]);
if(level==2) sprintf(lk," %d ",b3[i]);
if(level==3) sprintf(lk," %d ",b4[i]);
if(level==4) sprintf(lk," %d ",b5[i]);
if(level==5) sprintf(lk," %d ",b6[i]);
strcat(buffer,lk);
SendDlgItemMessage(hdwnd, 100, WM_SETTEXT, 0, LPARAM(buffer));
}

ELSE IF, pas besoin de tester encore si on a trouvé la valeur, surtout dans une boucle.