行列
Posted: 2017年7月10日(月) 07:52
ベクトルの積を求めたいんですが、うまくいきません
Void MatProから下を教えてほしいです
形はなるべく変えずにお願いします。
#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;
MatPro(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)
{
int i,j;
for (i = 0; i < 3; i++){
for (j = 0; j < 0; j++){
Mat[j] * Vec;
}
}
}
double innerp(int n, double *a, double *b)
{
double ip = 0;
int i;
for (i = 0; i < n; i++)
ip += *(a + i)**(b + i);
return ip;
}
ページトップ
Name: みけCAT [URL] 伝説なるハッカー(661,805
Void MatProから下を教えてほしいです
形はなるべく変えずにお願いします。
#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;
MatPro(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)
{
int i,j;
for (i = 0; i < 3; i++){
for (j = 0; j < 0; j++){
Mat[j] * Vec;
}
}
}
double innerp(int n, double *a, double *b)
{
double ip = 0;
int i;
for (i = 0; i < n; i++)
ip += *(a + i)**(b + i);
return ip;
}
ページトップ
Name: みけCAT [URL] 伝説なるハッカー(661,805