Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1977 connectés 

  FORUM HardWare.fr
  Programmation
  C

  me manque kelke lignes!!!!

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

me manque kelke lignes!!!!

n°969848
whishy
la beauté du rouge, le noir ?
Posté le 02-02-2005 à 19:50:27  profilanswer
 

Salut, alors j'essai en vais nde faire un petit probléme de programmation, mais ca merde à un endroit, mais je n'arrive pas du tout a trouver la solution a mon erreur (en fait les valeur semble étre décaler de un pour lesadditions, si kelk'un pouvais m'aider un ti peu....ca serais trés cool  :p  
voilà l'ennocé : faire un programme qui prend 2 matrice entrée et qui affiche le résulatat de l'addition des deux matrices.
et g fais :  
 

Code :
  1. int Tab [3][3];
  2. int Tab1 [3][3];
  3. int i=0;
  4. int j=0;
  5. int k=0;
  6. int l=0;
  7. int S;
  8. void main (){
  9.     while (i<3){
  10.         while (j<3){
  11.             printf ("entrez les valeurs du premier tableau [%d][%d]",i ,j);
  12.             scanf ("%d ",& Tab[i][j]);
  13.             j=j+1;
  14.             }
  15.         i=i+1;
  16.         j=0;
  17.     }
  18.     while (k<3){
  19.         while (l<3){
  20.             printf ("entrez les valeurs du deuxiéme tableau [%d][%d]",k,l);
  21.             scanf ("%d ",& Tab1[k][l]);
  22.             l=l+1;
  23.             }
  24.             k=k+1;
  25.             l=0;
  26.         }
  27.         k=0;
  28.         i=0;
  29.         j=0;
  30.         l=0;
  31.                 while (k<3){
  32.                     while(l<3){
  33.                         S=Tab[i][j]+Tab1[k][l];
  34.                         printf ("les sommes des deux matrices tab[%d][%d] et tab1[%d][%d]sont : %d \n ",i ,j, k, l,S);
  35.                         l=l+1;
  36.                         j=j+1;
  37.                     }       
  38.                     k=k+1;
  39.                     i=i+1;
  40.                     l=0;
  41.                     j=0;
  42.                 }       
  43.      
  44.     }


 
voilà j'vous remerci par avance si kelk'un peu m'aider... :sarcastic:


Message édité par whishy le 02-02-2005 à 20:17:49
mood
Publicité
Posté le 02-02-2005 à 19:50:27  profilanswer
 

n°969851
black_lord
Truth speaks from peacefulness
Posté le 02-02-2005 à 19:51:26  profilanswer
 

utilise des balises code pour mettre en forme plz


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°969874
gilou
Modérateur
Modzilla
Posté le 02-02-2005 à 20:21:14  profilanswer
 

T'aider a faire quoi, quel est ton pb?
 
Sinon tu fais un truc inutile:

Citation :

S=Tab[i][j]+Tab1[k][l];


 
Ce que tu additionnes en fait, c'est les membres pour des indices identiques,  
tu peux donc ecrire: S=Tab[k][l]+Tab1[k][l];
 
A+,


Message édité par gilou le 02-02-2005 à 20:24:11

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°969877
masklinn
í dag viðrar vel til loftárása
Posté le 02-02-2005 à 20:23:13  profilanswer
 

il y a un truc qu'on appelle "for", c'est vachement pratique: ça incrémente automatiquement les index


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°969952
Emmanuel D​elahaye
C is a sharp tool
Posté le 02-02-2005 à 22:01:15  profilanswer
 

Masklinn a écrit :

il y a un truc qu'on appelle "for", c'est vachement pratique: ça incrémente automatiquement les index


Eun non! Pas 'automatiquement'. (C != BASIC)
 
 
 
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°969961
masklinn
í dag viðrar vel til loftárása
Posté le 02-02-2005 à 22:13:22  profilanswer
 

Emmanuel Delahaye a écrit :

Eun non! Pas 'automatiquement'. (C != BASIC)


tu pinailles là :(  
 
par rapport à un while, c'est automatique :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°969971
Emmanuel D​elahaye
C is a sharp tool
Posté le 02-02-2005 à 22:18:52  profilanswer
 

whishy a écrit :

Salut, alors j'essai en vais nde faire un petit probléme de programmation, mais ca merde à un endroit, mais je n'arrive pas du tout a trouver la solution a mon erreur (en fait les valeur semble étre décaler de un pour lesadditions, si kelk'un pouvais m'aider un ti peu....ca serais trés cool  :p  
voilà l'ennocé : faire un programme qui prend 2 matrice entrée et qui affiche le résulatat de l'addition des deux matrices.
et g fais :  
<...>
voilà j'vous remerci par avance si kelk'un peu m'aider...


Une façon compliquée d'écrire


#include <stdio.h>
 
int main (void)
{
   int Tab[3][3];
   int Tab1[3][3];
 
   {
      int i;
      for (i = 0; i < 3; i++)
      {
         int j;
         for (j = 0; j < 3; j++)
         {
            printf ("entrez les valeurs du premier tableau [%d][%d] : ", i, j);
            fflush (stdout);
            scanf ("%d", &Tab[i][j]);
         }
      }
   }
 
   {
      int i;
      for (i = 0; i < 3; i++)
      {
         int j;
         for (j = 0; j < 3; j++)
         {
            printf ("entrez les valeurs du deuxieme tableau [%d][%d] : ", i, j);
            fflush (stdout);
            scanf ("%d", &Tab1[i][j]);
         }
      }
   }
 
 
   {
      int i;
      for (i = 0; i < 3; i++)
      {
         int j;
         for (j = 0; j < 3; j++)
         {
            int S = Tab[i][j] + Tab1[i][j];
            printf ("les sommes des deux matrices tab[%d][%d] et tab1[%d][%d]sont : %d \n ", i, j, i, j, S);
         }
      }
   }
 
   system("pause" );
   return 0;
}


Et encore, on doit pouvoir 'factoriser'...


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°969972
Chronoklaz​m
Posté le 02-02-2005 à 22:19:07  profilanswer
 

Mais c'est quoi une boucle 'for' c'est interpreté comment ? Comme une macro ou bien comme une boucle hardware en ASM ?  
EDIT: Je veux dire apres le parsage du for par exemple il se passe quoi ? ptet je confonds tout ...  :(


Message édité par Chronoklazm le 02-02-2005 à 22:22:49
n°969974
Emmanuel D​elahaye
C is a sharp tool
Posté le 02-02-2005 à 22:21:22  profilanswer
 

Masklinn a écrit :

tu pinailles là :(  
 
par rapport à un while, c'est automatique :o


Ben non. C'est organisé, bien présenté, structuré, mais pas automatique. En BASIC on met NEXT ou NEXT I et ça fait i++.
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°969976
masklinn
í dag viðrar vel til loftárása
Posté le 02-02-2005 à 22:21:41  profilanswer
 

Emmanuel Delahaye a écrit :

Une façon compliquée d'écrire
Et encore, on doit pouvoir 'factoriser'...


On pourrait déclarer i et j en même temps que les tables déjà :o
 
ce qui permettrait d'enlever les {} du for(i)
 
(au fait, pourquoi pas ++i? [:cupra] )


Message édité par masklinn le 02-02-2005 à 22:24:16

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
mood
Publicité
Posté le 02-02-2005 à 22:21:41  profilanswer
 

n°969980
Emmanuel D​elahaye
C is a sharp tool
Posté le 02-02-2005 à 22:28:54  profilanswer
 

Chronoklazm a écrit :

Mais c'est quoi une boucle 'for' c'est interpreté comment ? Comme une macro ou bien comme une boucle hardware en ASM ?  
EDIT: Je veux dire apres le parsage du for par exemple il se passe quoi ? ptet je confonds tout ...  :(


Ben c'est traduit en langage machine comme n'importe quelle autre instruction. Rien de magique.


int i = 0;
while (i < 3)
{
   i++;
}


ca fait le même code que


int i;
for (i = 0; i < 3; i++)
{
   
}


soit un truc dans le genre (pseudo assembleur)


 MOV A, 0
 MOV B, 3
ENCORE:
 INC A
 DEC B
 JZ FIN
 
 
 JMP ENCORE
FIN:


Message édité par Emmanuel Delahaye le 02-02-2005 à 22:34:33

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°969987
Emmanuel D​elahaye
C is a sharp tool
Posté le 02-02-2005 à 22:32:26  profilanswer
 

Masklinn a écrit :

On pourrait déclarer i et j en même temps que les tables déjà :o


Euh bof, je préfère limiter la portée. Ca prépare à la mise en fonction...

Citation :


ce qui permettrait d'enlever les {} du for(i)


Bof, personnellement, je mets toujours les {}. C'est plus clair et ça facilite la maintenance et l'évolution.

Citation :

(au fait, pourquoi pas ++i?)


Dans le contexte, pas de différence.
 
Je n'utilise pas le contexte où ça fait une différence. Trop dangereux.


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°969994
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 02-02-2005 à 22:33:47  profilanswer
 

Chronoklazm a écrit :

Mais c'est quoi une boucle 'for' c'est interpreté comment ? Comme une macro ou bien comme une boucle hardware en ASM ?  
EDIT: Je veux dire apres le parsage du for par exemple il se passe quoi ? ptet je confonds tout ...  :(


 
exemple de "for (int i=0; i<5; i++)" en asm :

Code :
  1. mov eax,5 // eax = i
  2. loop: (traitement) // le corps de la boucle for
  3.       dec eax // eax = eax-1
  4.       cmp eax,0 // eax = 0 ?
  5.       jnz loop  // si non, alors on boucle
  6.       (après le for)


Message édité par Harkonnen le 02-02-2005 à 22:35:29

---------------
J'ai un string dans l'array (Paris Hilton)
n°970029
black_lord
Truth speaks from peacefulness
Posté le 02-02-2005 à 23:02:02  profilanswer
 

Harkonnen a écrit :

exemple de "for (int i=0; i<5; i++)" en asm :

Code :
  1. mov eax,5 // eax = i
  2. loop: (traitement) // le corps de la boucle for
  3.       dec eax // eax = eax-1
  4.       cmp eax,0 // eax = 0 ?
  5.       jnz loop  // si non, alors on boucle
  6.       (après le for)



 
il fallait que tu mettes de l'assembleur hein :D


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°970059
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 02-02-2005 à 23:19:31  profilanswer
 

black_lord a écrit :

il fallait que tu mettes de l'assembleur hein :D


chuis toujours là pour aider les ames perdues dans ces langages d'assistés comme le C et autres Basic évolués :o


---------------
J'ai un string dans l'array (Paris Hilton)
n°970323
whishy
la beauté du rouge, le noir ?
Posté le 03-02-2005 à 10:53:51  profilanswer
 

hohoho, ba euhh merci bien mais ca ma po beaucoup aider, en fait ce que vous m'avez dit à l'air pas mal du tout, le seul hic ce que je n'en suis pas encore a ce niveau là!!!
Pour l'histoire du for, je préfére vraimenet le while, je les bien mieux compris (et je le métrise mieux aussi)!!!
Le probléme c que mon addition différe d'une valeur...a partir de la toute premiére...
Merci encore


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  me manque kelke lignes!!!!

 

Sujets relatifs
liste horizontale sur plusieurs lignes en CSS ?Impression en CSS et lignes coupées
Décomposition de lignes lues dans un fichierespacement entre les lignes
Point d'intersection de deux lignes 2D ...Enlever des lignes dans un fichier
Cherche à tracer des lignes!!!graphics.h???[Pourquoi]Lignes dans le out d'un jsp = nb de <@ page>
lire certaines lignes d'un fichier texte (php)Garder les dernieres lignes d'un fichier texte
Plus de sujets relatifs à : me manque kelke lignes!!!!


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR