大整数的乘法实习报告(共11页).doc

上传人:飞****2 文档编号:17326818 上传时间:2022-05-23 格式:DOC 页数:11 大小:78KB
返回 下载 相关 举报
大整数的乘法实习报告(共11页).doc_第1页
第1页 / 共11页
大整数的乘法实习报告(共11页).doc_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《大整数的乘法实习报告(共11页).doc》由会员分享,可在线阅读,更多相关《大整数的乘法实习报告(共11页).doc(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上湖南涉外经济学院 计算机科学与技术专业算法设计与分析课程 大整数乘法问题 实 验 报 告班级: 学号: 姓名: 教师: 成绩: 2012年5月【实验目的】1 掌握设计有效算法的分治策略2 利用软件的方法来实现大整数的算术运算【系统环境】Windows 7 平台【实验工具】VC+6.0英文企业版【问题描述】 描述: 由于现在的许多方面需要在计算结果中要求精确地得到所有位数上的数字,就必须用软件的方法来实现大整数的运算。其中一般都通过数组来实现。例: 5464 *1231 其结果是:【实验原理】1 、开始时的思路:1.弄2个string类型的变量来获取乘数a与被乘数b2.

2、需要用到string类型的变量时再调用转换函数3.再定义个2维数组来装a*b的积、定义个d数组装最终结果4.写一个乘法和加法函数用来实现上述功能 2 、例子:【源程序代码】#include#includeusing namespace std;void MUL_max(string a,int la,string b,int lb,int *c);/相乘函数void ADD_max(int * d,int *c,int la,int lb);/相加函数char * ZhuanH(string);void main()string a;string b;int *c=NULL;int *d=NU

3、LL;int la=0,lb=0;int i=0,j=0,k=0;cout *大整数乘法*endl;couta;coutb;la=a.length();lb=b.length();/分配2维C数组,存储数组a和b的乘积c=new int*la; for(k=0;kla;k+)ck=new intlb+1;/分配数组d用于存储最终结果d=new intla+lb+1;for(i=0;ila+lb+1;i+)/初始化,便于后面判断相加后的有效位数di=0;/初始化数组C,便于后面判断相加后的有效位数for(i=0;ila;i+)for(j=0;j=lb;j+)cij=0;/调用函数MUL_max(

4、a,la,b,lb,c);ADD_max(d,c,la,lb);k=0;couta和b相乘结果是:endl;for(i=0;i=la+lb;i+)if(di=0)k+;elsebreak;for(i=k;i=la+lb;i+)coutdi;coutendl; /释放空间for(int n=0;n=0;i-)for(j=lb-1;j=0;j-)num_a=ai-48; num_b=bj-48;if(k=num_a*num_b)=10)/判断乘积是否有进位if(mid!=0)/判断前一次相乘是否有进位cij+1=k%10+mid;elsecij+1=k%10;mid=k/10;else/没有进位i

5、f(mid!=0)/判断前一次相乘是否有进位cij+1=k+mid;elsecij+1=k;mid=0;if(mid!=0)ci0=k/10;/如果乘数个位和被乘数相乘,最后有进位/数组相加函数void ADD_max(int *d,int *c,int la,int lb)int i=0,j=0;int mid=0;int num_a=0,num_b=0;int add=0,midnum=0;/将相乘得到的二维数组C各行错位相加,得到一位数组dfor(i=la-1;i=0;i-)for(j=lb;j=0;j-)num_a=di+j+1;num_b=cij;add=num_a+num_b;if(add=10)/判断相加是否有进位if(midnum=1)di+j+1=add%10+1;elsedi+j+1=add%10;midnum=1;elsedi+j+1=add;midnum=0;if(midnum=1)d0=add/10;/转化函数char * ZhuanH(string src)char *dst=new char255;int i;for(i=0;i=src.length();i+)dsti=srci;dsti=0;return dst;【实验结果】测试1:测试2:测试3:专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁