Rupture en c

Résolu
karemkadidola Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -  
karemkadidola Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,





Bonjour, j'ai un tableau des unsigned int trié je voudrais faire un rupture sur chaque element differents ainsi copier dans un premier tableau l'élément et dans l'autre le nombre d'occurence et je ne sais pas pourquoi cette instructions dans mon code ne marchent pas

j =0
et i contient le nombre d'élement dans tab
while (j<i){
	saveChiffre=tab[j];
	cpt=0;
		while (j<i && saveChiffre==tab[j]){
			cpt=cpt+1;
			j=j+1;
			saveChiffre=tab[j];
		}
		tabFac[k]=saveChiffre;
		tabOccur[k]=cpt;
		k=k+1;
}

2 réponses

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
while (j<i){
	saveChiffre=tab[j];
	cpt=0;
		while (j<i && saveChiffre==tab[j+1]){
			cpt=cpt+1;
			j=j+1;
			saveChiffre=tab[j];
		}
		tabFac[k]=saveChiffre;
		tabOccur[k]=cpt;
		k=k+1;
}

c'est un peu risqué, mais sinon, ta condition est toujours vrai. ça doit être ça le souci. En fait, je ne comprends pas ton algorithme. Je pense que tu devrais le repenser.
0
karemkadidola Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
Merci de me l'avoir fait remarquer cher Ami, (j'adore ce site car y a toujours quelqu'un qui connait et qui veut bien t'aider) en effet deux erreurs dans mon prog
while (j<i){
saveChiffre=tab[j];
cpt=0;
while (j<i && saveChiffre==tab[j+1])/*pa de +1*/{
cpt=cpt+1;
j=j+1;
saveChiffre=tab[j];/*instruction en trop*/
}
tabFac[k]=saveChiffre;
tabOccur[k]=cpt;
k=k+1;
}

en effet la deuxième condition était toujours vrai donc il me fallait enlever l'instruction soulignée encore merci car j'ai passé plus de 5h à chercher l'erreur c affreux...
0