【精品实用】数值计算指导书_第1页
【精品实用】数值计算指导书_第2页
【精品实用】数值计算指导书_第3页
【精品实用】数值计算指导书_第4页
【精品实用】数值计算指导书_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数值计算指导书 计算机科学与信息工程学院 1 目录 实验一矩阵类的设计 . 2 实验二 . 5 实验三 . 8 实验四最小二乘法的设计 . 12 实验五轴转方法的设计 . 14 实验六单纯型算法的实现 . 17 实验七初始单纯型的实现 . 20 实验八多项式类的设计 . 23 实验九递归 . 26 实验十非递归 . 29 实验十一计算最大公约数 . 31 实验十二求解模线性方程 . 34 实验十三计算模幂 . 35 实验十四 . 38 2 实验一矩阵类的设计 一、实验目标 1通过本实验了解矩阵类的设计。 2设计矩阵类中的加法运算符、加法运算符和矩阵乘法的强力算法。 二、实验内容与 步骤 第一步 :在 件夹内打开 第二步 :在 览矩阵类 第三步 :在 览矩阵类 第四步 :在 件内 容如下: #(b) if(); r; 3 /在此加入矩阵加法的代码 r; 在 其中提示加入代码的位置 加入 你的代码。 第五步 :点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第六步 :在 件内容如下: # a9= b9= (a,3,3),B(b,3,3),C; C=A+B; ); r; /在此加入矩阵减法代码 r; 4 在其中提示加入代码的位置加入你的代码。 第八步 :点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第九步 :在 改其中相应代码,使之计算矩阵 工具栏中的按钮 运行。记录下运行结果,并验算计算结果是否正确,若有错误则调试,直至正确为止。 第十步 :在 件内容如下: #a,b) i,j,k,m,n,l; r; m=l=n=d(m*n); /在此加入矩阵强力乘法代码 d; r; 在其中提示加入代码的位置加入你的代码。 第十一步 :点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第十二步 :在 改其中相应代码,使之计算矩阵 A*B。点工具栏中的按钮 运行。记录下运行结果,并验算计算结果是否正确,若有错误则调试,直至正确为止。 三、实验要求 1独立完成实验任务 2认真填写试验报考 5 3实验完成后将你的代码文件存盘待查 实验二 一、实验目标 1实现阶数为 2的整幂的方阵乘法的 2实现阶数为任意正整数方阵乘法的 3利用强力乘法算法和 二、实验内容和步骤 第一步 :在 件夹内打开 第 二 步 :在 件内容如下: #,)/n=(n,n); if(n1) a,b,c,d,e,f,g,h,1,2,3, 4,5,6,7; 1,3,5,7; /*分解方阵 A, B*/ a=,0,n/2,n/2);b=,n/2,n/2,n/2); c=?;d=?; e=?;f=?; g=?;h=?; /计算 7对 n/2阶方阵 i=1,2, 7 A1=a;B1=A2=a+b;B2=h; A3=c+d;B3=e; A4=d;B4=A5=a+d;B5=e+h; A6=6=g+h; A7=7=e+f; /递归计算 6 P1=1,P2=2, P3=3,P4=4, P5=5,P6=6, P7=7, /计算积 C ,0,46);/r ,n/2,?);/s n/2,0,?);/t n/2,n/2,1=*; ; 参考教材中 代码中“?”处替换成正确的表达式。注意 中的 法和 法的各参数意义(考察 第 三 步 :点工具栏中的按钮 编译 该文件。若有语法错误,则按提示修改,直至编译成功。 第 四 步 :在 件内容如下: #(b) if(); if(b); (b); 理解该程序的意义是根据矩阵是否为方阵而调用 法或强力算法来计算矩阵的积。点工具栏中的按钮 编译该文件。 第 五 步 :在 件内容如下: #7 a9= b9=; (a,2,2),B(b,2,2),C; C=A*B; a9= b9= (a,3,3),B(b,3,3),C; C=A*B; if(k!=, k, t=pk; pk=?; p?; k,k+1); k,k+1)/?; k+1,k,?); k+1,k+1,?); 10 根据教材中的 及类 每个“ ?”处替换成正确的表达式,使之成为能正确计算出矩阵 第 四 步 :点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第 五 步 :在 件内容如下: # d9= l; a(d,3,3); l=a); ; i=0;i=0;k=?; j=k+1;e,0,l,0)/l,e);/be bl/al,e j=:1;jNj!=e) e,Nj,?);/ae,j al,j/al,e e,l,?);/ae,l 1/al,e /*计算其他约束的系数 */ i=1;im;i+) if(i!=l) i,0,?);/bi bi-ai,e*be j=:1;,?,?);/ai,j ai,j-ai,e*ae,j i,l,?);/ai,l -ai,e*ae,l /*计算目标函数 */ v=v+?;/v v+ce*be j=:1;jNj!=e) ?;/cj cj-ce*ae,j 16 ?;/cl -ce*ae,l /*计算新的基变量集合与非基变量集合 */ ,e);/找到 中的位置 (l);/将 中 ,l);/找到 中的位置 ?;/将 中删除 ?;/将 中 ,);/对新的 ?;/对新的 ; 根据课文中的 ”处替换成你的代码。 第五步 :点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第六步 :在 件内容如下: #) 9= b3= c3= LP ,b,c,3,3); ; ; ; 理解程序的意义是解线性规划 17 2x1+x3 x1+0 24 4x1+6 。 点工具栏中的按钮 编译该文件。点工具栏 中的按钮运行。记录下运行结果,并验算计算结果是否正确,若有错误则调试,直至正确为止。 三、实验要求 1独立完成实验任务 2认真填写试验报考 3实验完成后将你的代码文件存盘待查 实验六单纯型算法的实现 一、实验目标 1实现按 2实现按 3实现阶线性规划的单纯型算法。 二、实验内容和步骤 第一步 :在 件夹内打开 第 二 步 :在 件内容如下: #P:/按 i; 18 i=:1; /在 的非基变量最小下标 e, /在此处加入你的代码 if(i; 1; 参考教材中关于进入变量选取方法 的描述,在提示插入代码处加入你自己的代码。 第 三 步 :点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第 四 步 :在 件内容如下: #P:e)/按 i,l=1; a,d,;/ i=1;im;i+) a=?;/a Ai,e if(ad=?;/d bi/Ai,e d=;/d )/在 d; l=i; /若 无界否则 Bl即为所求 if() 1; l; 19 参考课文中 797页上 “?”处替换成正确的代码。点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第 五 步 :在 件内容如下: #*对 (A,b,c)给定的具有 P 执行单纯型算法 并返回最优解 v */ P: e,l; ; )/目标函数中存在系数小于 0的变量 l=?;/根据进入变量 l if(l=0) ?;/对 i+)/找出向量 ; 参考注释,在提示插入代码处加入你自己的代码。 第 三 步 :点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第 四 步 :在 件内容如下: #(A,b,c)确定的 第一个具有可行基本解的松弛形式(N,B,A,b,c,v) P: i,j,l,e; *x=n+m+1;/保存辅助 最优解的空间 l=?;/将 )/初始基本解是否可行? v= v1=v;/保存原目标函数 c1=c; /通过添加非基变量 P ,0, i=1;n+i,0, ; e=?;/选择 l,e);/求得辅助 具有可行基本解的松弛形式 e=)=0)/解出辅助 最优解 22 l=e); l,e); i=1;iv=; i=1; 参考课文中 812 页上 “?”处替换成正确的代码。点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第 五 步 :在 件内容如下: #) 4=b2=c2= LP ,b,c,2,2); ; 23 ; ; 理解程序的意义是解线性规划 22 4 0。 点工具栏中的按钮 编译该文件。点工具栏中的按钮 运行。记录下运行 结果,并验算计算结果是否正确,若有错误则调试,直至正确为止。 三、实验要求 1独立完成实验任务 2认真填写试验报考 3实验完成后将你的代码文件存盘待查 实验八多项式类的设计 一、实验目标 1通过本实验了解多项式类的设计。 2设计多项式类中的加法运算符、加法运算符和多项式乘法的卷积算法。 二、实验内容与步骤 第一步 :在 件夹内打开 第二步 :在 览多项式类 第三步 :在 览多项式类 第四步 :在 件内容如下: #(g)/多项 式相加 a( 24 if( a4=b4= p(a,3),q(b,3),t; t=p+q; a( 25 if(j,k; r(d),a1(d),b1(d); /在此加入你的代码 r; (g)/多项式相乘 g); 根据教材关于卷积的定义(公式 其中提示加入代码的位置加入你的代码。 第十一步 :点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第十二步 :在 6 的 容如下 # a4=b4= p(a,3),q(b,3),t; t=p*q; ,k; if(n=1) w(wn(*PI/n),*PI/n); 2),2),y(y0,0和 A1 k=0; a; a=?;/利用 a a=?;/对 n a; 28 参考课文中 837页上式( 在“?”处替换成正确的代码 。点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第 五 步 :在 件内容如下: #(g)/多项式相乘 l,n,? /计算本多项式与多项式 l=; n=1; ? ;/将多项式 b p=? ;/p FT(a) b) ;/将 数设置为 p; 根据 课文中 程的伪代码,将“?”替换成正确的代码。点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第六步 :在 容如下 # a4=b4= p(a,3),q(b,3),t; t=p*q; ; ( ;/计算 为底的对数(也就是 k=0;,s,m=1,j,k; =?;/lg(n); s=1;s a4=b4= p(a,3),q(b,3),t; t=p*q; (i=0;i a,b,n) d=(1),p=b,t; p!=0)/构建 p%2!=0); p/=2; i=-1;i=0;/d d*d (n) )/若 bi=1 ?;/d d*a (n) / 37 a(7),b(560),n(561),p; p=a,b,n); p!=0)/构建 p%2!=0); p/=2; if()/若最低位为 1 d=a;/d a d=1;/d 1 t=a; i=1;i 正在生成公、密钥,请稍侯 k=28); 公钥: 密钥: 模: ; 不难看出这个程序将生成 128二进制位的 40 工具栏中的按钮 编译该文件。点工具栏中的按钮 运行。记录下运行结果,并验算计算结果是否正确,若有错误则调试,直至正确为止。 第 六 步 :在 件内容如下: #, k, n) c; ?;/c Mk (n) c; 根据教材 884 页的式 (“ ?”处替换成正确的代码,使之成为能利用公、密钥对信息加、解密的程序。 第 七 步 :点工具栏中的按钮 编译该文件。若有语法错误,则按提示修改,直至编译成功。 第八步:将 123456),正在生成公、密钥,请稍侯 k=28); 公钥: 密钥: 模: 原文: 密文: 译文: ; 这是一个生成 128位 123456”加密、解密的验证程序。点工具栏中的按钮 编译该文件。点工具栏中的按钮 运行。记录下运行结果,并验算计算结果是否正确,若有错误则调试, 41 直至正确为止。 三、实验要求 1独立完成实验

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论