大整数乘法MFC实现.doc

大整数乘法MFC实现.doc

ID:28385226

大小:28.50 KB

页数:4页

时间:2018-12-09

大整数乘法MFC实现.doc_第1页
大整数乘法MFC实现.doc_第2页
大整数乘法MFC实现.doc_第3页
大整数乘法MFC实现.doc_第4页
资源描述:

《大整数乘法MFC实现.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、大整数乘法MFC实现类ClassBigDlg类ClassBigNum类ClassBigDlg功能说明:显示用户界面,获得用户输入信息,在用户确定输入的时候把用户输入信息写入文件。输入信息经过类ClassBigNum的处理,把结果返回ClassBigDlg类,ClassBigDlg类再负责把计算结果写入文件,同时在屏幕上显示输出结果。主要变量说明:CStringm_strInput1,CStringm_strInput2,为对话框上的两个EDIT编辑框控件的控件变量,以字符串的形式来记录用户输入的两个大整数。类ClassBigNum功能说明:接收从

2、ClassBigDlg类传进来的两个字符串型大整数m_strInput1和m_strInput2,实现两个大整数的加法、减法和乘法运算,其中减法的运算结果是乘法运算中需要用到的参数,加法是把乘法的递归结果加起来得到最终的结果。主要变量说明:intA[256],intB[256],intC[256],intD[256]四个整型的数组均被初始化为0,A[256]和B[256]为一组,作为函数Dev(CStringstr,intn1[256],n2[256])中的两个整型数组参数,用来存储Dev(CStringstr,intn1[256],n2[256

3、])把传进来的CStringm_strInput1转化后的整形数据。同样,A[256]和B[256]为一组存储CStringm_strInput2转化后的整形数据。生命周期:从程序开始运行时开始,程序结束时结束时序图:用户文件结果变量输入ClassClass输出BigDlgBigNum信息反馈类ClassBigDlgClassBigDlgOnCancel()OnBtnGO()OnClear()OnBtnInput()类的方法说明:ClassBigDlg类对用户来说响应四个按钮消息ClassBigDlg::OnBtnInput(),  ClassB

4、igDlg::OnBtnGo(),ClassBigDlg::OnClear(),ClassBigDlg::OnCancel()。ClassBigDlg::OnBtnInput():响应按钮“输入”的消息映射,实现把用户输入的数据传递给对应的EDIT编辑框控件变量,同时实现把用户输入的数据写入文件。ClassBigDlg::OnBtnGo():响应按钮“计算”的消息映射,调用ClassBigNum类的成员函数ClassBigNum::Mult(intx[256],inty[256],intn)得到计算的结果,把结果写入文件并在屏幕上显示。Class

5、BigDlg::OnClear():响应按钮“清空”的消息映射,当用户单击此按钮时,输入、输出EDIT编辑框中的数据被清空,以便于用户重新开始计算。ClassBigDlg::OnCancel():响应按钮“退出”的消息映射,当用户单击此按钮时,程序退出运行。类ClassBigNumClassBigNum方法Mult()方法Sub()方法Add()方法Dev()类的方法说明:VoidDev(CStringstr,intn1[256],n2[256])对输入的大数进行二分。输入的大数是字符串型,用这个函数把字符串型大数二分,并把二分后的两个数转化为整

6、型分别存入到整型数组n1[256]和n2[256]中,每个数组元素存一位数字,若两个数组长度不相等,则短的数组高位补0,使两个数组元素个数相等。Add(intm1[256],intm2[256],intm)实现两个大整数的加法运算,参数m1[256],m2[256]传递的是经过二分后的两个整型数组,k为数组的长度,运算时从低位向高位一位一位的带进位的加,函数的返回值为两个整型数组相加后的结果,结果仍然保存在一个整型数组中。Sub(intk1[256],intk2[256],intk)实现两个大整数的减法运算,参数k1[256],k2[256]传递

7、的是经过二分后的两个整型数组,t为数组的长度,运算时从低位向高位一位一位的带进位的减,函数的返回值为两个整型数组相减后的结果,结果仍然保存在一个整型数组中。Mult(intx[256],inty[256],intn)实现两个大整数的乘法运算,函数要进行递归调用。在程序中调用这个函数之前,先把要进行运算的两个大数由字符串型转化为整型,分别存在两个整型数组中。而此函数首次调用要传递的两个参数就是用户输入的两个整数。在函数中还要进行自身的递归调用,函数Mult(intx[256],inty[256],intn)的最终返回结果是两个大数运算的最终结果。递

8、归时要进行中间结果的二分、加、减运算,因此递归时要反复调用VoidDevide(CStringstr,intn1[256],n2[256

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。