【大整数计数器1.实现大整数(200位以内的整数)的加、减、乘、除运算.2.设计要求设计程序实数据结构课设大整数计数器1.实现大整数(200位以内的整数)的加、减、乘、除运算.2.设计要求】
大整数计数器1.实现大整数(200位以内的整数)的加、减、乘、除运算.2.设计要求设计程序实
数据结构课设
大整数计数器
1.
实现大整数(200位以内的整数)的加、减、乘、除运算.
2.设计要求
设计程序实现两个大整数的四则运算,输出这两个大整数的和、差、积、商及余数.
3.数据结构
本课程设计采用顺序串来实现.
4.
由于整数数据存储位数有限,因此引入串的概念,将整型数据用字符串进行存储,利用字符串的一个字符存储大整数的一位数值,然后根据四则运算规则,对相应位依次进行相应运算,同时保存进位,从而实现大整数精确的运算.
具体设计思路如下:
(1)计算大整数加法时,采用数学中列竖式的方法,从个位(即字符串的最后一个字符)开始逐位相加,超过或达到10则进位,同时将该位计算结果存到另一个字符串中,直至加完大整数的所有位为止.
(2)计算大整数减法时,首先调用库函数strcmp判断这两个大整数是否相等,如果相等则结果为0,否则用compare函数判断被减数和减数的大小关系,进而确定结果为正数还是负数,然后对齐位依次进行减法,不够减则向前借位,直至求出每一位减法之后的结果.
(3)计算大整数乘法时,首先让乘数的每一位都和被乘数进行乘法运算,两个乘数之积与进位相加作为当前位乘积,求得当前位的同时获取进位值,进而实现大整数的乘法运算.
(4)计算大整数除法时,类似做减法,基本思想是反复做减法,从被除数里最多能减去多少次除数,所求得的次数就是商,剩余不够减的部分则是余数,这样便可计算出大整数除法的商和余数.