闲来没事,写个求两个数相除,想看看后面的小数,此算法可快速算出小数点后千万位。

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileWriter;

import java.util.ArrayList;

import java.util.List;

public class CopyOfChuFa {

public static void main(String[] args)throws Exception {

int a=1;//被除数

int b=14754359;//除数

int n=0;//小数点后循环次数

int f;//每次相除余数

int l=a%b;//第一次相除的余数

long k=0;//用来记录小数点后位数

File file=new File("E:/["+a+","+b+"]-result.txt");

//删除上传计算结果文件

if(file.exists()){

file.delete();

}

FileWriter fw=new FileWriter(file,true);

BufferedWriter bw=new BufferedWriter(fw);

bw.write(a/b+".");

f=a%b;

a=f*10;

List result=new ArrayList();

while(f!=0&&n!=1){//整除或者算到第一重循环就结束

result.add(a/b);

f=a%b;

a=f*10;

//f==l表示到小数点循环开始,f==0表示两个数可以整除

if(f==l||f==0){

n++;

}

k++;

//每隔700万就写入到文件中

if(k%7000000==0){

for(int i=0;i<7000000;i++){

bw.write(result.get(i)+"");

}

result=new ArrayList();

}

}

System.out.println(k);

//将最后的结果追加到文件末尾

for(int i=0;i

bw.write(result.get(i)+"");

}

bw.close();

}

}

下面是计算出来的部分结果

0.00000006777658046683017540782354557049886070957064281816648219011073269940090247227954803051762533363868942052989221693738101397695420045018560277677939109384555438836753260511012372682540800315350873596067440137521392830417099109490286904365008334147217103772519023022281076392407152354094135841482506966246381831972503854623572599799150881444595458196455705056383676173258357072645446677825854718595365613646787366364069086295107771201717404327765103180693922385919984731291952432498084125511653878016659347925585923454892211854137478964691044863419684989364837876047343025881368346805171271757722582187406447138774378473507388562254720791326820772085049577551962779270858191806231636359126140281661846509224833149308621269144935405191103185167176696730776308208306440151008932343316304015647172472894281615351775024587648978854316883573186744337724193914489948360345576517421055025162394381213036771031530410775554532731648999458397345489560068316082047346143604069820993240031640818825134999087388344014131688133655958893232840545631294453388317310158984202566848210755885769080174882555046952565001298938164646800311690938250858610665498921369610160631173472192184018295881237538004870289519185482744455384337604907132868327251627807077216977030313550049853063762376935521224608944380436994924686324902355974935949437044333813485221553847239314157938003270762220。。。

第一重循环小数点就有7122780位,算出来的文件6.79M。

java小数点默认定义_java求两个数后小数点默认无限长度相关推荐

  1. java 平均值_Java求两个数平均值

    如何正确的求2个数的平均值.在练习算法二分查找的时候发现的,以前没有注意到的bug 备注:数据以int类型为例 一.以前的通用写法 /** * 求a+b平均值 * @param a * @param ...

  2. java 圆的交点_java求两个圆相交坐标

    最近由于项目需要,根据两个圆函数求出相交的坐标.实现代码如下,另感谢两圆求交点算法实现Java代码,虽然他所贡献的代码中存在问题,但仍有借鉴意义. 1.两个圆相交的数学求法 在中学数学中我们知道,一个 ...

  3. java int64如何定义_java – 具有两个int属性的自定义类的hashCode是什么?

    在 Java中,我有一个类表示一个具有int坐标的点 public class Point { int x = -1; int y = -1; public Point (int xNew, int ...

  4. Java求两个数的最大公约数及最小公倍数、求多个数的最大公约数及最小公倍数

    今天参加腾讯笔试,做编程题时在最小公倍数.最大公约数这些这么简单的知识点上卡壳了,自信心受到强烈的打击,下来后猛复习了这方面的相关编程知识. 有以下几个关键点: 1.任意正整数的最大公约数.最小公倍数 ...

  5. java递归算法之求两个数的最大公约数

    改下包名即可运行 package cn.blk5;public class CommonDivisor {/*** @author: LIWEI* @updateTime: 2019-06-24 12 ...

  6. 求两个数的最大公因数

    这里提供两种方法:一种比较朴素,基本思想很简单就是按照从大到小的找能够匹配的因数,找到就返回:另一种是欧几里得算法,该算法的核心思想是,当前两个数的最大公因数的也是这两个数模的与其中一个元素的的最大公 ...

  7. python编写函数、计算三个数的最大公约数_python 函数求两个数的最大公约数和最小公倍数...

    1. 求最小公倍数的算法: 最小公倍数 = 两个整数的乘积 / 最大公约数 所以我们首先要求出两个整数的最大公约数, 求两个数的最大公约数思路如下: 2. 求最大公约数算法: 1. 整数A对整数B进行 ...

  8. 【C语言练习】求两个数m和n的最大公约数(辗转相除法)

    求两个数m和n的最大公约数 一.编程思路 1.首先,题目里是两个数,我们自然而然要想到定义两个变量: 2.其次,我们的目的是寻找最大公约数,所以要搞清楚其概念:两个或多个整数共有约数中最大的一个 3. ...

  9. 求两个数的最大公约数的3种办法

    2019独角兽企业重金招聘Python工程师标准>>> import org.junit.Test;import java.util.ArrayList; import java.u ...

最新文章

  1. 在Ubuntu14.04安装F.lux
  2. java设置虚基类的目的_设置虚基类的目的是( )。
  3. 集群中几种session同步解决方案的比较[转]
  4. 扎心!程序员泪奔的8个瞬间
  5. 表格在首行,添加空行
  6. (转载)uCOS-II的嵌入式串口通信模块设计
  7. lenna的真实面目
  8. python连续小波变换_连续小波变换CWT(2)
  9. unity 确定与取消对话框
  10. Ant Design Of react modal框动态控制footer展示或者隐藏
  11. jQueryphotoClip-图片上传并裁剪
  12. 我的梦想是成为一名计算机程序员英语怎么说,英语作文。我的梦想、我的梦想是成为电脑程序员。。80词...
  13. SIPC的认证算法java实现
  14. 2022世界杯不扩军!国足教练:机会来了
  15. TransModeler 交通仿真软件
  16. 计算机网络安装,计算机网络系统安装操作指南.pdf
  17. Vue速成day01
  18. java生成不可修改的pdf_好記性不如爛筆頭4-JAVA生成PDF文件
  19. ES聚合Aggregation---原生(restful)api
  20. 设计 QQ、微信、微博、Github 等第三方账号登陆

热门文章

  1. Python 的内置数据类型:列表 list、元组 tuple、字典 dict、集合 set.
  2. 教程-Spark安装与环境配置
  3. SAP UI5 应用开发教程之十八 - SAP UI5 数据绑定语法里的特殊符号,以及绝对绑定和相对绑定概念详解
  4. jMeter 里如何使用 variable
  5. Event Bus 设计模式学习笔记
  6. SAP Spartacus login 超链接和 login form 的区别
  7. Angular 不同种类 Module 的介绍
  8. SAP UI5 应用的调试标志位的本地存储逻辑 - local storage 使用的一个例子
  9. build.gradle里test标签的实现原理
  10. Java 8里一元函数Function的compose和andThen方法区别