标题:请教:矩阵相乘的问题
只看楼主
宝贝橙子
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-9-20
 问题点数:0 回复次数:4 
请教:矩阵相乘的问题

这个程序运行出来没有结果~我不知道怎么回事,请赐教。。。

#include "stdafx.h"

#include<iostream>
using namespace std;
class Matris
{
private:
int row,cols,**p;
public:
Matris(int a,int b):row(a),cols(b){}
Matris();
~Matris();
void set_matris();
Matris operator*(Matris &);
void show_matrix();
};
Matris::Matris()
{
p=new int *[row];
for(int i=0;i<cols;i++)
p[i]=new int [cols];
}
Matris::~Matris()
{
for(int i=0;i<cols;i++)
delete [] p[i];
delete [] p;
}
void Matris::set_matris()
{
for(int i=0;i<row;i++)
for(int j=0;j<cols;j++)
cin>>p[i][j];
}
Matris Matris::operator *(Matris & a)
{
Matris c;
if(this->cols==a.row)
{
for(int i=0;i<this->row;i++)
for(int j=0;j<a.cols;j++)
for(int k=0;k<this->cols;k++)
c.p[i][j]=c.p[i][j] + this->p[i][k]*a.p[k][j];
}
return c;
}
void Matris::show_matrix()
{
for(int i=0;i<row;i++)
for(int j=0;j<cols;j++)
cout<<p[i][j]<<" ";
cout<<endl;

}
int main()
{
Matris a(2,3),b(3,2),c;
a.set_matris();
b.set_matris();
a.show_matrix();
cout<<"*********";
b.show_matrix();
cout<<"************";
c=a*b;
c.show_matrix();
return 0;
}

搜索更多相关主题的帖子: Matris int 矩阵 相乘 row 
2007-09-20 11:26
宝贝橙子
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-9-20
得分:0 


都没有人帮忙呢。。。
2007-09-20 12:03
yangzhks
Rank: 2
等 级:论坛游民
威 望:3
帖 子:1135
专家分:13
注 册:2006-10-27
得分:0 
用的类啊,我可能会用数组

2007-09-21 23:10
xiaoniao330
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-9-21
得分:0 


void Matris::set_matris()
{
for(int i=0;i<row;i++)
for(int j=0;j<cols;j++)
cin>>p[i][j];
}
这里有问题把??
2007-09-22 15:12
踏魔狼
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:1322
专家分:33
注 册:2005-9-22
得分:0 
那里本身没问题.是他这个类有问题.
Matris a(2,3),b(3,2),c;
看那c.当这个c调用构造函数时,问题就来啦.
Matris::Matris()
{
p=new int *[row];
for(int i=0;i<cols;i++)
p[i]=new int [cols];
}

看吧!row==??
cols ==??
这根本就没有赋值.

除了这个还有的是问题!!!!

=×&D o I p R e E n C g T l X&×=
2007-09-22 16:47



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-171450-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.503064 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved