#1
by みき » 7年前
3行3列の行列と3次元ベクトルの積を求めるプログラム。
途中まで作ったんですけど、oid MatPro(double(*Mat)[3], double *Vec, double *ReVec)とvoid MatPro(double(*Mat)[3], double *Vec, double *ReVec)ここの宣言の後から何を書けばいいのかよくわからなくて
教えてほしいです。
#include<stdio.h>
void MatPro(double(*Mat)[3], double *Vec, double *ReVec);
double innerp(int n, double *a, double *b);
int main(void)
{
double Mat[3][3] = { {12,34,82},{43,80,-54},{56,31,78}};
double Vec[3] = { 2,64,32 }, ReVec[3];
int i;
Vec =ReVec (Mat, Vec, ReVec);
printf("output=Mat[3][3](input)*Vec[3](input)\n");
for (i = 0;i < 3;i++)
printf("|%7.2f| |%6.2f %6.2f %6.2f| |%6.2f|\n", *(ReVec + i), *(*(Mat + i)), *(*(Mat + i) + 1), *(*(Mat + i) + 2), *(Vec + i));
return 0;
}
void MatPro(double(*Mat)[3], double *Vec, double *ReVec)
{
}
double innerp(int n, double *a, double *b)
{
}
3行3列の行列と3次元ベクトルの積を求めるプログラム。
途中まで作ったんですけど、oid MatPro(double(*Mat)[3], double *Vec, double *ReVec)とvoid MatPro(double(*Mat)[3], double *Vec, double *ReVec)ここの宣言の後から何を書けばいいのかよくわからなくて
教えてほしいです。
#include<stdio.h>
void MatPro(double(*Mat)[3], double *Vec, double *ReVec);
double innerp(int n, double *a, double *b);
int main(void)
{
double Mat[3][3] = { {12,34,82},{43,80,-54},{56,31,78}};
double Vec[3] = { 2,64,32 }, ReVec[3];
int i;
Vec =ReVec (Mat, Vec, ReVec);
printf("output=Mat[3][3](input)*Vec[3](input)\n");
for (i = 0;i < 3;i++)
printf("|%7.2f| |%6.2f %6.2f %6.2f| |%6.2f|\n", *(ReVec + i), *(*(Mat + i)), *(*(Mat + i) + 1), *(*(Mat + i) + 2), *(Vec + i));
return 0;
}
void MatPro(double(*Mat)[3], double *Vec, double *ReVec)
{
}
double innerp(int n, double *a, double *b)
{
}