C++实现高精度加、减、乘、除
高精度加法
引入
竖式计算
洛谷:P1601
算法核心
代码登录后可见
C++程序
代码登录后可见
补充
Python解题
代码登录后可见
Java题解
代码登录后可见
高精度减法
引入
竖式计算
洛谷:P2142
算法核心
要点
- 如果 a < b,则需要交换 a 和 b;
- 如果 a < b,需要借高位的 1 当 10 用。
代码登录后可见
C++程序
代码登录后可见
高精度乘法
引入
竖式计算
算法核心
分析︰
代码登录后可见
然后还需要考虑进位。结合我画的图,可以得出 c[i+j-1] 的关系式:
算法核心
代码登录后可见
C++程序
代码登录后可见
高精度除法
引入
竖式计算
分为两种:
- 大的数除以小的数
- 小的数除以大的数
高精度除以普通数
算法核心
方法:逐位试商法
求商,求余
代码登录后可见
C++程序
代码登录后可见
高精度除以高精度
算法核心
方法:减法模拟除法
531518 / 123
逐个相减
C++程序
代码登录后可见