高精度加减乘除阶乘计算的算法及代码

高精度计算

主要的方法是利用数组模拟计算比如:

高精度加法

[**************]13 + [***********]1

开两个数组存储:

a[]={3,1,2,1,1,1,0,1,9,8,7,6,5,4,3,2,1};

b[]={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1};

两个数组分别把数值倒存, 在一位一位的加, 每位加后判断是否大于10, 在进位(注:如果太大的数值, 可以考虑4位一存哦.) 注意下面的a1,b1,c1 为 数组的长度

四位一存:

高精度减法

-- 18:59 2009年5月17日 (CST)

高精度乘法

四位一计算:

更快的算法需要借助FFT(也有人喜欢用NTT) 实现nlogn

高精度除法

只提供程序段,未处理循环小数。

-- 22:24 2011年8月20日

请看到这个问题的OIers 注意并及时给出正确解法,最近忙于琐事,拜托了,这个网站很久无人管理了。--SepHiRoTH 23:02 2011年7月30日 (CST)

算法已改。 --Taophee 22:24 2011年8月20日

做一下循环小数,这需要加一段,既然做了就把 它做好怎样?--SepHiRoTH 08:20 2011年8月21日 (CST)

高精度阶乘

作为一种高精度乘法的扩展算法,实质为高精度乘低精度,算法如下:

--SepHiRoTH 18:59 2009年5月17日 (CST)

高精度快速幂

主要用了二分的手段。中间的乘法就看上面的吧。 --By Clarkok

高精度计算

主要的方法是利用数组模拟计算比如:

高精度加法

[**************]13 + [***********]1

开两个数组存储:

a[]={3,1,2,1,1,1,0,1,9,8,7,6,5,4,3,2,1};

b[]={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1};

两个数组分别把数值倒存, 在一位一位的加, 每位加后判断是否大于10, 在进位(注:如果太大的数值, 可以考虑4位一存哦.) 注意下面的a1,b1,c1 为 数组的长度

四位一存:

高精度减法

-- 18:59 2009年5月17日 (CST)

高精度乘法

四位一计算:

更快的算法需要借助FFT(也有人喜欢用NTT) 实现nlogn

高精度除法

只提供程序段,未处理循环小数。

-- 22:24 2011年8月20日

请看到这个问题的OIers 注意并及时给出正确解法,最近忙于琐事,拜托了,这个网站很久无人管理了。--SepHiRoTH 23:02 2011年7月30日 (CST)

算法已改。 --Taophee 22:24 2011年8月20日

做一下循环小数,这需要加一段,既然做了就把 它做好怎样?--SepHiRoTH 08:20 2011年8月21日 (CST)

高精度阶乘

作为一种高精度乘法的扩展算法,实质为高精度乘低精度,算法如下:

--SepHiRoTH 18:59 2009年5月17日 (CST)

高精度快速幂

主要用了二分的手段。中间的乘法就看上面的吧。 --By Clarkok


相关文章

  • 南京邮电大学软件设计实验报告
  • 通信与信息工程学院 2012/2013学年 第 二 学期 软件设计实验报告 模块名称专业广播电视工程 学生班级 B100117 学生学号 B10011714 学生姓名王建明 指导教师田炜 题目一:P021E 实验要求: 设计一个简单的文本编 ...查看


  • 大数阶乘算法
  • *************************************(1)**************************************************** 假如需要计算n+16的阶乘,n+16接近10000,已 ...查看


  • 递归算法及经典递归例子代码实现
  • 递归(recursion):程序调用自身的编程技巧. 递归满足2个条件: 1)有反复执行的过程(调用自身) 2)有跳出反复执行过程的条件(递归出口) 递归例子: (1)阶乘 n! = n * (n-1) * (n-2) * ...* 1(n ...查看


  • 基于80251的嵌入式语音识别
  • 一.文档介绍 嵌入式语音识别技术在251内核的实现. 缩写.术语 解 释 Specific Person Isolated Word Speech Recognition 特定人孤立词语音识别 Endpoint detection 端点检测 ...查看


  • B5分治思想与递归算法的应用
  • 一.分治思想 例1.找伪币 [问题描述] 给你一个装有16个硬币的袋子,16个硬币中有一 个是伪造的,并且那个伪造的硬币比真的硬币要轻一 些. 你的任务是找出这个伪造的硬币. 为了帮助你完成这一任务,将提供一台可用来比 较两组硬币重量的仪器 ...查看


  • 广东省信息技术初二年级(下)教案全
  • 龙城一中 八年级下册<信息技术>教案 广东省初级中学课本 信息技术教案 第二册(下) 目 录 第一章 探索计算机网络世界 ................................................... 2 ...查看


  • 自考计算机组成原理课后习题答案
  • 习 题 2 参考答案(参见课本P.58) 1. 解释下列术语 解:可在课堂讲述的内容中寻找答案,也可参考课本下述段落的内容. 原码(P14.-7--5),补码(P15.-1-P16.1),反码(P17.17-18), 移码(P18.7-10 ...查看


  • 程序设计基础实验报告
  • 西华大学实验报告(理工类) 开课学院及实验室:汽车学院机房(5D-215) 实验时间: 2008年 3 月 9 日 1.实验目的 1.掌握标签.命令按钮的常用属性.事件和方法. 2.掌握运用图片框和图像框加载图像的方法. 3.掌握计时器和滚 ...查看


  • 用函数式编程技术编写优美的 JavaScript
  • 文档选项 将此页作为电子邮件发送 未显示需要 JavaScript 的文档选项 最新推荐 Java 应用开发源动力 - 下载免费软件,快速启动开发 级别: 初级 Shantanu Bhattacharya (shantanu@justawo ...查看


热门内容