Produit de matrices
zeusensa
Messages postés
21
Statut
Membre
-
ghiz Messages postés 39 Statut Membre -
ghiz Messages postés 39 Statut Membre -
Bonjour,
j'ai un problème avec ce programme,svp aidez moi!!
#include<stdio.h>
#include<conio.h>
#include<string.h>
int main()
{
int i,j,n,m,k,l;
printf("\n entrez le nombre de lignes de la premiere matrice \n");
scanf("%d",&n);
printf("\n entrez le nombre de colonnes de la premiere matrice \n");
scanf("%d",&m);
int mat1[n][m];
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
printf("\n donnez la valeur de mat[%d][%d] =",i,j);
scanf("%d",&mat1[i][j]);
}
}
printf("\n entrez le nombre de lignes de la deuxieme matrice \n");
scanf("%d",&k);
printf("\n entrez le nombre de colonnes de la deuxieme matrice \n");
scanf("%d",&l);
int mat2[k][l];
for(i=0;i<k;i++)
{
for(j=0;j<l;j++)
{
printf("\n donnez la valeur de mat2[%d][%d] =",i,j);
scanf("%d",&mat2[i][j]);
}
}
if (m!=k)
{
printf("\n\n produit matriciel impossible!!!!\n");
}
int t[n][l];
for(i=0;i<n;i++)
{
for(j=0;j<l;j++)
{
for(k=0;k<m;k++)
{
t[i][j]= t[i][j]+mat1[i][k]*mat2[k][j];
}
}
}
printf("\n\n voici votre matrice : \n\n" );
for(i=0;i<n;i++)
{
printf(" \n");
for(j=0;j<l;j++)
{
printf("\t %d" ,t[i][j] );
}
}
getch();
}
j'ai un problème avec ce programme,svp aidez moi!!
#include<stdio.h>
#include<conio.h>
#include<string.h>
int main()
{
int i,j,n,m,k,l;
printf("\n entrez le nombre de lignes de la premiere matrice \n");
scanf("%d",&n);
printf("\n entrez le nombre de colonnes de la premiere matrice \n");
scanf("%d",&m);
int mat1[n][m];
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
printf("\n donnez la valeur de mat[%d][%d] =",i,j);
scanf("%d",&mat1[i][j]);
}
}
printf("\n entrez le nombre de lignes de la deuxieme matrice \n");
scanf("%d",&k);
printf("\n entrez le nombre de colonnes de la deuxieme matrice \n");
scanf("%d",&l);
int mat2[k][l];
for(i=0;i<k;i++)
{
for(j=0;j<l;j++)
{
printf("\n donnez la valeur de mat2[%d][%d] =",i,j);
scanf("%d",&mat2[i][j]);
}
}
if (m!=k)
{
printf("\n\n produit matriciel impossible!!!!\n");
}
int t[n][l];
for(i=0;i<n;i++)
{
for(j=0;j<l;j++)
{
for(k=0;k<m;k++)
{
t[i][j]= t[i][j]+mat1[i][k]*mat2[k][j];
}
}
}
printf("\n\n voici votre matrice : \n\n" );
for(i=0;i<n;i++)
{
printf(" \n");
for(j=0;j<l;j++)
{
printf("\t %d" ,t[i][j] );
}
}
getch();
}
A voir également:
- Produit de matrices
- Clé de produit windows 10 - Guide
- Produit de protection solaire - Guide
- Historique prix produit - Guide
- Produit de beauté avion ryanair - Guide
- Vous ne pouvez pas modifier une partie de matrice - Forum Excel
1 réponse
Salut, tu as un problème lors de la déclaration des matrices, tu n'as le droit de déclarer une matrice de cette façon
int m1[n][m] dans le cas où n et m sont des variables.
ou bien tu fixes la taille maximale c à d
int m1[10][10] enfin ce que tu veux comme taille mais il faut écrire un nombre
ou bien tu peux déclarer des variables comme constantes.
#include<stdio.h>
#include<conio.h>
#include<string.h>
#define nmax 10
#define mmax
...
main()
...
int m1[nmax][mmax];
int m1[n][m] dans le cas où n et m sont des variables.
ou bien tu fixes la taille maximale c à d
int m1[10][10] enfin ce que tu veux comme taille mais il faut écrire un nombre
ou bien tu peux déclarer des variables comme constantes.
#include<stdio.h>
#include<conio.h>
#include<string.h>
#define nmax 10
#define mmax
...
main()
...
int m1[nmax][mmax];