Produit des elements [Résolu]

Signaler
Messages postés
28
Date d'inscription
vendredi 6 mars 2015
Statut
Membre
Dernière intervention
18 octobre 2017
-
Messages postés
16221
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
20 mai 2020
-
Bonsoir, comment allez-vous ?
Voilà, depuis la semaine dernière je voulais résoudre un programme en c, qui affiche "la somme des éléments impairs du résultat du produit de deux vecteurs d'entier [N].
Je me confie a vous, parce que je ne sais quoi faire. J'ai commencé mais. A chaque fois que j'essaye de compliler le programme ça m'affiche des messages d'erreurs.

8 réponses

Messages postés
16221
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
20 mai 2020
92
Bonjour,

Sans le code qui pose problème, comment pourriez nous t'aider à corriger les erreurs ? On ne peux pas le deviner...

Remarque : pour mettre en forme le code sur le forum merci d'utiliser les balises <code c></code>
Messages postés
28
Date d'inscription
vendredi 6 mars 2015
Statut
Membre
Dernière intervention
18 octobre 2017

ben voila , j'ai essaye de faire le produit des deux vecteurs,
en commençant par:
#include<stdio.h>
#include<conio.h>
int v1[dim],v2[dim],vp[dim];
int i,n,j,temp;
main(){
do{
printf("\n Entrer la dimension des vecteurs :");
scanf("%d",&n);
}while(n<2);
for(i=0;i<n;i++){
printf("Entrer le %d element du 1er vecteur :",i+1);
scanf("%d",&v1[i]);
}
for(i=0;i<n;i++){
printf("Entrer le %d element du 2e vecteur :",i+1);
scanf("%d",&v2[i]);
}
for(i=0;i<n;i++){
printf("%d\t",v1[i]);
}
for(i=0;i<n;i++){
printf("%d\t",v2[i]);
}
for(i=0;i<n;i++){
vp[i]=v1[i]*v2[i];
}
printf("\nProduit des deux\n");
for(i=0;i<n;i++){
printf("%d\t",vp[i]);
}
mais il m'affice erreurs
Messages postés
16221
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
20 mai 2020
92
J'ai pas de compilateur pour tester et voir quelles erreurs ça t'affiche, mais à vue de nez je dirais que dim n'est pas défini donc il est incapable de créer des tableaux à la bonne taille.
Messages postés
28
Date d'inscription
vendredi 6 mars 2015
Statut
Membre
Dernière intervention
18 octobre 2017

ce que je voulais faire c'est de creer le programme, pour que l'utilisateur entre lui même sa taille du tableau
Messages postés
16221
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
20 mai 2020
92
Là tu parles de n, mais moi je parle de dim...
Messages postés
3809
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
22 avril 2020
105
Bonjour.

Tu n'étais pas très "loin". C'est simplement que tu confonds "dim" et "n", comme l'a dit KX. Pour corriger cela, on va déclarer des tableaux de dimensions volontairement trop grand (c'est plus simple si tu débutes). On va prendre 128. "size" représentera la taille réelle de tes tableaux.

Quelques remarques:
  • Pas besoin de conio.h
  • Pleins de variables déclarées, mais pas utilisées.
  • Évite les variables "globales", c-à-d en déclarées en dehors des fonctions, et donc accessibles par n'importe quelles fonctions.
  • La fonction main retourne un entier.


En reprenant ton code modifié, cela donne:
#include <stdio.h>

int main()
{
  int v1[128];
  int v2[128];
  int vp[128];
  int i;
  int size;

  do
  {
    printf("\n Entrez la dimension des vecteurs: ");
    scanf("%d", &size);
  }
  while (size < 2);

  for (i = 0; i < size; i++)
  {
    printf("Entrez le %d element du 1er vecteur: ", i + 1);
    scanf("%d", &v1[i]);
  }
  for (i = 0; i < size; i++)
  {
    printf("Entrez le %d element du 2e vecteur: ", i + 1);
    scanf("%d", &v2[i]);
  }

  for (i = 0; i < size; i++)
    printf("%d\t", v1[i]);
  printf("\n");

  for (i = 0; i < size; i++)
    printf("%d\t", v2[i]);
  printf("\n");

  for (i = 0; i < size; i++)
    vp[i] = v1[i] * v2[i];

  printf("\nProduit des deux:\n");
  for (i = 0; i < size; i++)
    printf("%d\t", vp[i]);
  printf("\n");

  return 0;
}


PS: La prochaine fois, n'oublie pas les balises de code, comme te l'a indiqué KX. Pas de balises de code == pas d'aide.


Améliorer votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
Messages postés
28
Date d'inscription
vendredi 6 mars 2015
Statut
Membre
Dernière intervention
18 octobre 2017

Ok mecri, je vais essayé de le compiler pour voir ce que ça donne.
Merci pour vos remarques
Messages postés
16221
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
20 mai 2020
92
Une remarque au passage. Il serait cohérent de compléter le test while(n<2) pour vérifier que n ne soit pas supérieur à la capacité du tableau (128 dans l'exemple)