ncoder
Messages postés244Date d'inscriptionvendredi 6 mai 2005StatutMembreDernière intervention 6 avril 2008
-
9 mai 2007 à 20:35
cs_Sunglasses
Messages postés8Date d'inscriptionsamedi 20 mai 2006StatutMembreDernière intervention11 juillet 2008
-
9 mai 2007 à 21:08
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_Sunglasses
Messages postés8Date d'inscriptionsamedi 20 mai 2006StatutMembreDernière intervention11 juillet 2008 9 mai 2007 à 21:08
Ok, merci pour la fonction d'affichage, c'est vrai que c'est un peu plus sympathique quand tous les nombres sont bien alignés (m'enfin quelle idée d'utiliser des nombres plus grands que dix :-) ).
Quand j'aurai un peu de temps il faudra que je l'adapte à ma structure de données, car je n'ai pas utilisé un tableau de tableaux, mais un tableau dans lequel les éléments sont rangés en colonne (c'est un peu plus performant niveau timing).
Si vous avez d'autres suggestions, je suis tout ouïe (même si je n'apporte pas les modifications tout de suite à mon code, dès que j'ai cinq minutes je m'y remets, promis :-) ).
ncoder
Messages postés244Date d'inscriptionvendredi 6 mai 2005StatutMembreDernière intervention 6 avril 20081 9 mai 2007 à 20:35
Pour afficher un tableau[X][Y], voici une petite fonction :
void AfficherTableau( float * t[], int TailleX, int TailleY )
{
int x;
int y;
int i, j, k;
9 mai 2007 à 21:08
Quand j'aurai un peu de temps il faudra que je l'adapte à ma structure de données, car je n'ai pas utilisé un tableau de tableaux, mais un tableau dans lequel les éléments sont rangés en colonne (c'est un peu plus performant niveau timing).
Si vous avez d'autres suggestions, je suis tout ouïe (même si je n'apporte pas les modifications tout de suite à mon code, dès que j'ai cinq minutes je m'y remets, promis :-) ).
9 mai 2007 à 20:35
void AfficherTableau( float * t[], int TailleX, int TailleY )
{
int x;
int y;
int i, j, k;
printf("\n\t---\n\n\t%c", 201);
for (i=0; i<TailleX*8-1; i++) printf("%c", 205);
printf("%c\n\t", 187);
for(y = 0; y<TailleY; y++) {
for(x = 0; x<TailleX; x++) {
if ( t[x][y]>=0 ){ //Si positif, pas besoin de "-"
if ( t[x][y]<10 ) printf("%c%.5f", 186, t[x][y]);
else if ( t[x][y]<100 ) printf("%c%.4f", 186, t[x][y]);
else if ( t[x][y]<1000 ) printf("%c%.3f", 186, t[x][y]);
else if ( t[x][y]<10000 ) printf("%c%.2f", 186, t[x][y]);
else if ( t[x][y]<100000 ) printf("%c%.1f", 186, t[x][y]);
else if ( t[x][y]<1000000 ) printf("%c%.0f-", 186, t[x][y]);
else if ( t[x][y]<10000000 ) printf("%c%.0f", 186, t[x][y]);
else printf("%c-GRAND-", 186, t[x][y]);
}
else{ //Sinon
if ( t[x][y]>-10 ) printf("%c%.4f", 186, t[x][y]);
else if ( t[x][y]>-100 ) printf("%c%.3f", 186, t[x][y]);
else if ( t[x][y]>-1000 ) printf("%c%.2f", 186, t[x][y]);
else if ( t[x][y]>-10000 ) printf("%c%.1f", 186, t[x][y]);
else if ( t[x][y]>-100000 ) printf("%c%.0f", 186, t[x][y]);
else if ( t[x][y]>-1000000 ) printf("%c%.0f", 186, t[x][y]);
else printf("%cNEGAT", 186, t[x][y]);
}
if ( x==TailleX-1 ) printf("%c\n\t", 186);
}
if (y!=TailleY-1) {
for(j=0; j<TailleX; j++){
printf("%c-------", 186);
if ( x==TailleX-1 ) printf("%c\n\t", 186);
}
printf("%c\n\t", 186);
}
}
printf("%c", 200);
for (i=0; i<TailleX*8-1; i++)printf("%c", 205);
printf("%c\n\n\t---\n\n", 188);
}