算法 —— 高精度
1. 概念
什么是高精度
在一般的科学计算中,会经常算到小数点后几百位或者更多,当然也可能是几千亿几百亿大的数字,一般这类数字我们统称为高精度数。
高精度算法
高精度算法是用计算机对于超大数据的一种模拟加、减、乘、除、乘方、阶乘、开方等运算。
对于一个很大的数字,(N≥10^100),我们采用将这个数值拆开成一位一位或者四位四位的数字组合存储到数组中,用一个数组去表示这一个数值。
用这样的高精度数做加减乘除运算和常规操作一样,也涉及进位、退位的处理,特点是从低位往高位进行计算
2. 例题
①两高位数乘法
※P1303 洛谷 A*B Problem
题目描述
求两数的积。
输入格式
两行,两个整数。
输出格式
一行一个整数表示乘积。
样例输入 #1
1 2
样例输出 #1
2
思路
-
以字符串的方式读入数字,并分别保存在a,b字符数组中。
-
用strlen函数计算字符数组中总字符数(高精度数的位数)
-
完成高精度数的乘法运算只需列一个竖式的乘法运算就能轻松完成程序设计。找到其中的关键规律:个位和个位相乘&#x