test6_vector.cpp

来自「定义并实现复数类」· C++ 代码 · 共 82 行

CPP
82
字号
#include<iostream>
using namespace std;
class vector1 
{ 
private:
	friend class vector2 ;
public:
	float elem(int i)
	{			
	   return (i+1); 
	}
};
class matrix
{
private:	
	friend class vector2;
public:
	int elem(int i, int j)
	{  		
		return j+2;	
	}
};
class vector2
{
public:
	int elem[3];
	vector2()
	{
		for(int z=0;z<3;z++)
			elem[z]=0;
	}
    vector2 multiply(matrix &m,vector1 &v)
	{
      vector2 r;
	  cout<<"向量"<<"( ";
      for(int j=0; j<3; j++)
	  {
	    r.elem[j]=0; 
		cout<<v.elem(j)<<" ";
	    for(int i=0; i<3;i++) 
		{	
		r.elem[j]+=(v.elem(i)*m.elem(i, j));}		
 
	  }
	  cout<<")"<<endl<<endl<<"  ×"<<endl;
	  for(int i=0;i<3;i++)
	  {
		  if(i==1)
			  cout<<"矩阵  ";
		  else cout<<"      ";
	      for(int j=0;j<3;j++)
		  {
			  if(i==1)
			  cout<<m.elem(i,j)<<" ";
			  else cout<<m.elem(i,j)<<" ";
		  }
          cout<<endl; 
	  }
	  int a[3];
	  cout<<"结果向量是: (";
	  for(i=0;i<3;i++)
		{
			a[i]=r.elem[i];
			if(i<2)
			{
				cout<<a[i]<<",";
			}
			else cout<<a[i]<<")"<<endl;
		}
       return r;
	}

};
void main()
{
	vector2 v2;
	vector1 v1;
	matrix m1;
	v2.multiply(m1,v1);
	
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?