kanagan
Messages postés26Date d'inscriptionmercredi 17 décembre 2003StatutMembreDernière intervention29 mars 2006
-
7 déc. 2004 à 19:33
asmanur
Messages postés230Date d'inscriptionmercredi 11 février 2004StatutMembreDernière intervention 4 août 2005
-
9 déc. 2004 à 07:27
Bonjour,
alors voilà j'ai une petite fonction qui convertit un nombre base 10 en un nombre base 2 et qui m'affiche ce résultat par un printf.
Seulement j'aimerai stocker ce résultat dans un tableau d'entier par exemple, est ce possible ? Et si oui comment ? car je n'arrive pas à le faire...
Comme ça par la suite, j'essaierai de retourner l'adresse de ce tableau pour le traiter dans mon main.
asmanur
Messages postés230Date d'inscriptionmercredi 11 février 2004StatutMembreDernière intervention 4 août 2005 7 déc. 2004 à 19:54
essaye, mais pour rendre le code + simple il faut abandonner la recursivité
void Base2(int Nombre)
{
int Tab[10];//Tableu d'entiers
for(int i=0;Nombre>1;i++)//Une boucle à la place de la recursivité => plus simple
{
Tab[i]=Nombre%2;
Nombre=Nombre/2;
}
}
a+
kanagan
Messages postés26Date d'inscriptionmercredi 17 décembre 2003StatutMembreDernière intervention29 mars 2006 7 déc. 2004 à 23:13
Pour l'afficher, tu fais bien ça ? Car il ne m'affiche pas le bon résultat. (Idem si je fais une autre boucle for pour l'afficher, si ça ce n'est pas bon)
void base2(int Nombre)
{
/*Tableu d'entiers*/
int Tab[10];
int i=0;
/*Une boucle à la place de la recursivité => plus simple*/
for(i=0;Nombre>1;i++)
{
asmanur
Messages postés230Date d'inscriptionmercredi 11 février 2004StatutMembreDernière intervention 4 août 2005 8 déc. 2004 à 07:24
ou a la fin de ta fonction après la boucle t'en fais une autre
for(int j=0;j<i;j++)
printf("%d",Tab[j]);
Je comprends pas pk il te met un résultat bizarre précise un peu plus stp
a+
kanagan
Messages postés26Date d'inscriptionmercredi 17 décembre 2003StatutMembreDernière intervention29 mars 2006 8 déc. 2004 à 14:38
Alors en fait la boucle n'était pas bonne, celle là fonctionne, mais le problème c'est que le tableau est rempli à l'envers (pour 4, il affiche 001 au lieu de 100 par exemple).