江苏科技大学计算机课程实践VC++精选.docVIP

  • 32
  • 0
  • 约7.07千字
  • 约 12页
  • 2018-01-18 发布于贵州
  • 举报

江苏科技大学计算机课程实践VC++精选.doc

江苏科技大学计算机课程实践VC精选

课程实践报告 设计题目:计算机程序设计实践(VC++) 设计实践:2013-09-23至2013-09-29 学院:电信学院 专业班级:测控技术与仪器 学生姓名:朱永海 学号:1240308133 指导老师: 2013年9月 实验一 一 实践任务 定义一个方阵类CMatrix,并根据给定算法实现仿真的线性变换。仿真的变换的形式为: F=W* f^T f为原始矩阵,f^T为原始矩阵的位置,w为变换矩阵,这里设定为 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 具体要求如下: 私有数据成员 Int(*a)[4]:a指向方阵变数。 Int w[4][4]: w为变换矩阵。 Int m: m便是方阵的行和列数。 (2) 公有成员函数 Cmatrix (int a[][4],int m) :用给定的参数a和m初始化数据成员m ;对变换矩阵w进行初始化,要求必须用循环实现。 Void Transform ( ):根据上数变换算法,求出变换后的数组形式,存放在原始数组内。 Void show ( ):在屏幕上显示数组元素。 ~CMatrix():释放动态分配的空间。 在主程序中定义数组 int arr[][4]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}作为原始数组。 一个Cmatrix类对象test,用arr初始化test,完成该类的测试。 二 系统设计 类的描述与定义 # includeiostream.h class CMatrix{ int (*a)[4]; int w[4][4]; int m; public: CMatrix(int a[][4],int m); void Transform(); void show(); ~CMatrix(){delete [m]a;} }; 主要成员函数定义 Cmatrix函数定义 CMatrix::CMatrix(int a[][4],int m) { this-m=m; this-a=new int[this-m][4]; for(int i=0;ithis-m;i++) for(int j=0;jthis-m;j++) this-a[i][j]=a[i][j]; for(i=0;i4;i++) for(int j=0;j4;j++) if(i+j==3||j==i) w[i][j]=1; else w[i][j]=0; } Transform函数定义 void CMatrix::Transform() { int (*b)[4]; b=new int[m][4]; for(int i=0;im;i++) for(int j=i;jm;j++) { b[j][i]=a[i][j]; b[i][j]=a[j][i]; } for( i=0;im;i++) for(int j=0;jm;j++) { a[i][j]=0; for(int k=0;km;k++) a[i][j]+=w[i][k]*b[k][j]; } for( i=0;im;i++) { for(int j=0;jm;j++) coutb[i][j]\t; cout\n; } delete [m]b; } show函数定义 void CMatrix::show() { coutbianhua juzhen:\n; for(int i=0;i4;i++) { for(int j=0;j4;j++) coutw[i][j]\t; cout\n; } coutsuo qiu fang zhen:\n; for( i=0;im;i++) { for(int j=0;jm;j++) couta[i][j]\t; cout\n; } } 主函数定义 void main() { int arr[][4]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}; CMatrix test(arr,4); test.Transform(); coutyuan fang zhena;\n; for(int i=0;i4;i++) { for(int j

文档评论(0)

1亿VIP精品文档

相关文档