我有一个矩阵[2] [3],一个向量[3],我用下面的代码计算结果,完全正常。 我的方法:将大小为[3] [2]的乘积矩阵初始化为零,按函数 matrix_x_vector 执行计算,并提取最后一行以获得最终输出(向量)。 我的期望:不是使用大小为[3] [2]的乘积矩阵,然后从中提取向量,而是将矩阵乘以向量并将其直接存储到合成向量中。
#include <stdio.h>
int main()
{
// Define Variables
int n1 = 2, n2= 3;
int vector[3] = {2,1,2};
int matrix[2][3] = {
{1,-1,2},
{2,-3,1},
};
int Product_matrix[3][2] = {
{0},
{0},
{0}
};
// Define Functions
void matrix_x_vector(int n1,int n2, int vector[n2], int matrix[n1][n2], int Product[n1][n2]); // Performs the calculation
// Execute Functions
matrix_x_vector(n1, n2, vector, matrix, Product_matrix);
printf("\n");
return 0;
}
void matrix_x_vector(int n1,int n2, int vector[n2], int matrix[n1][n2], int Product[n1][n2])
{
int i, j; // i = row; j = column;
printf("\nProduct Matrix of [x]*[y]\n");
// Load up A[n][n]
for (i=0; i<n2; i++)
{
for (j=0; j<n1; j++)
{
Product[j][0] += matrix[j][i] * vector[i];
printf("%4i", Product[j][0]);
}
printf("\n");
}
printf("Vector: \n");
// Print Vector from Product[n][n]
for (i=0; i<n1; i++){
printf("%4i\n", Product[i][0]);
}
}
[x] * [y]的产品矩阵
2 4
1 1
5 3
矢量:
5
3
答案 0 :(得分:0)
如果我正确理解了这个问题,就会要求一个函数使用向量而不是矩阵作为结果类型。该功能可以表述如下。
Fatal error: Uncaught exception 'Google\Cloud\Exception\ConflictException' with message
'{ "error": { "code": 409, "message": "too much contention on these datastore entities.
please try again. entity groups:[(app=s~test-154434, demo, 4564)]", "status": "ABORTED" } } '
in C:\xampp\htdocs\folder_name\vendor\google\cloud\src\RequestWrapper.php:219