Table de multiplication

Résolu
elhit Messages postés 10 Statut Membre -  
sambia39 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   -
bonsoir tout le monde je suis débutante en C j'ai écrit un programme qui affiche la table de multiplication de 6 7 8 9 avec la mise en forme suivante:
I 1 2 3 4 5 6 7 8 9 10
------------------------------------------
6 I 6 12 18 24 30 36 42 48 54 60
7 I 7 14 21 28 35 42 49 56 63 70
8 I 8 16 24 32 40 48 56 64 72 80
9 I 9 18 27 36 45 54 63 72 81 90
voilà le programme je sais pas ou se trouve le problème :
#include <stdio.h>
#include <stdlib.h>

int main()
{
int i,j;
char I;
printf(" I 1 2 3 4 5 6 7 8 9 10");
printf("--------------------------------");

printf("6789");
printf("IIII");

for(i=1; i<=10;i++)

{for(j=6; j<=9; j++)

{printf("%d%d",i*j);}

}

return 0;
}
et merci d'avance.

4 réponses

  1. Lerendra Messages postés 553 Statut Membre 299
     
    Coucou jeune aventurière !
    Je pense que tu devrais d'abord commencer par l'algo puis ensuite faire le programme en c.

    Exemple ALGO
    Programme Multiplication
    
    var:
    	entier i <- 1
    	entier j <- 6
    	entier k <- 1
    	entier l <- 1
    
    debut
    	Afficher ("I 1 2 3 4 5 6 7 8 9 10\n")
    	Afficher ("--------------------------------\n")
    	Tant que (j <= 9) faire
    		Tant que (i <= 10) faire
    			si (l <> 2) alors
    				Afficher ("{}  ", j)
    				incr l
    			finsi
    			k <- j*i
    			Afficher ("{} ", k)
    			incr i
    		Fintantque
    		Afficher ("\n")
    		i <- 1
    		l <- 1
    		incr j
    	Fintantque
    
    fin


    Puis ensuite, une fois que celà te semble correct, code le en langage c

    int main ( int argc, char *argv[] )
    {
    	long i = 1 ;
    	long j = 6 ;
    	long k = 1 ;
    	long l = 1 ;
     
    	printf ( "I 1 2 3 4 5 6 7 8 9 10\n" ) ; 
    	printf ( "--------------------------------\n" ) ; 
    	while ( j <= 9 ) 
    	{
    		while ( i <= 10 ) 
    		{
    			if ( l != 2 ) 
    			{
    				printf ( "%d  " , j ) ; 
    				l++ ;
    			}
    			k = j * i ;
    			printf ( "%d " , k ) ; 
    			i++ ;
    		}
    		printf ( "\n" ) ; 
    		i = 1 ;
    		l = 1 ;
    		j++ ;
    	}
     
    
    	pause ( ) ;
    
    	return 1 ;
     }


    Voilà, si tu as des question, n'hésites pas !
    0
    1. elhit Messages postés 10 Statut Membre
       
      a quoi sert main ( int argc, char *argv[] ) et quelle différence avec main()?
      0
    2. Lerendra Messages postés 553 Statut Membre 299
       
      C'est pour plus tard (récupérer des valeurs et autre) ! Tu peux utiliser juste main() pour l'instant ! :)
      0
    3. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      Dans ce genre de code, il vaut mieux utiliser des boucles for qui sont plus lisibles.
      Sinon, au niveau du code :
      printf ( "%d " , j ) ;
      Si j est un long, il faut mettre %ld pour afficher
      De même pour les autres printf().

      return 1 ;
      Plutôt return 0; pour signaler que tout s'est bien déroulé.
      0