Puissance d'une matrice en langage c
///Author: Karara Mohamed @ tutodev1.blogspot.com/ #include <stdio.h> #include <stdlib.h> void lecture(int (*t)[50],int *lig,int *col) { int l,c; printf("nombre de lignes de la matrice ?"); scanf("%d",lig); printf("nombre de colonnes de la matrice ?"); scanf("%d",col); for (l=0;l<*lig;l++) for(c=0;c<*col;c++) { printf("élément [%d,%d] : ",l,c); scanf("%d",&t[l][c]); } } void produit(int (*s)[50],int (*a)[50],int m,int l,int pui) { int i,z,j,p,c[50][50]; for (i=0;i<m;i++)for(j=0;j<l;j++) { s[i][j]=a[i][j]; } for(p=0;p<pui;p++){ for(i=0;i<m;i++){ for(j=0;j<l;j++) for(z=0;z<l;z++) c[i][j]+=s[i][z]*a[z][j]; } for (i=0;i<m;i++)for(j=0;j<l;j++) { s[i][j]=c[i][j]; c[i][j]=0; } } } int main() { int T[50][50],lig,col,l,c,R[50][50],pui,choix; do{ printf("\n\n\t\tDonne votre choix\n"); printf("\t\t1_lecture de matrice.\n"); printf("\t\t2_Degre\n"); printf("\t\t3_quit\n"); printf("\t\t"); scanf("%d",&choix); switch(choix) { case 1:{lecture(T,&lig,&col);system("cls");}break; case 2:{printf("Donner le P de A :"); scanf("%d",&pui); produit(R,T,lig,col,pui-1); for (l=0;l<lig;l++){ for(c=0;c<col;c++) { printf("[%d,%d]=%d ",l,c,R[l][c]); } printf("\n"); } system("pause>NULL"); }break; default :printf("Erreur"); } system("cls"); }while(choix<3); return 0; }
*********************************************************************************