楼主:
fishenos (一陣風)
2014-04-16 14:20:18开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
DEV C++
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
no
问题(Question):
喂入的资料(Input):
K:5*5的对称矩阵
X:5*1的矩阵
预期的正确结果(Expected Output):
出现Y1=X转置*K
错误结果(Wrong Output):
当机
程式码(Code):(请善用置底文网页, 记得排版)
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
if(j==0)
{
Y1[i][j]+=X[0][i]*Ks[0];
}
else
{
for(k=0;k<p[j]-p[j-1];k++)
{
Y1[i][j]+=X[j-k][i]*Ks[p[j]-k];
}
}
for(k=j+1;k<n;k++)
{
if(k-j < p[k]-p[k-1])
{
Y1[i][j]+=X[k][i]*Ks[p[k]-(k-j)];
}
}
}
}
补充说明(Supplement):
在这笔输入资料的情形下
n=5 m=1
将K以只储存上三角的方式
压缩成一维阵列Ks
并将原本对角线的数字在Ks中的位置储存在p中
然后用Ks和X相乘
目前确定Ks和p的值都没问题