To moj program :
Kod: Zaznacz cały
#include <stdio.h>
double potega(int p, double a[10][10],double b[10][10]){
// p-potega, a[10][10]-macierz, b[10][10]-przechowywany jest wynik
double c[10][10];
int i,j,s,k,r;
for(i=0;i<10;i++){
for(j=0;j<10;j++){
b[i][j]=a[i][j];
}
}
for(r=1;r<p;r++){
for(i=0;i<10;i++){
for(j=0;j<10;j++){
s=0;
for(k=0;k<10;k++){
s=s+a[i][k]*b[k][j];
}
c[i][j]=s;
}
}
for(i=0;i<10;i++){
for(j=0;j<10;j++){
b[i][j]=c[i][j];
}
}
} //b[i][j] jest macierza wynikowa
}
main(){
int i,j,n;
double a[10][10],b[10][10];
n=2;
printf("wczytaj macierz A
");
for(i=0;i<n;i++){
for(j=0;j<n;j++){
printf("a[%d][%d]=
",i,j);
scanf("%lf",&a[i][j]);
}
}
potega(2,a,b);
printf("
macierz A po podniesieniu do potegi 2
");
for(i=0;i<n;i++){
for(j=0;j<n;j++){
printf("%lf ",b[i][j]);
}
printf("
");
}
getch();
}