编写出1为分子,2017为分母,将两个数相除。
1.打印出小数点后10位数字。
2.打印出小数点后20位数字。
3.打印出小数点后40位数字。
4.打印出小数点后80位数字。
5.打印出小数点后160位数字。
6.打印出小数点后320位数字。
7.打印出小数点后640位数字。
8.打印出小数点后1280位数字。
9.打印出小数点后2560位数字。
10.打印出小数点后5120位数字。
11.问题来了,小数点后面的数字显然是无限重复的,那么,将重复的数字段找出来打印,告诉我这个数字段的长度是多长呢?
12.尝试找一下分子为1,分母为x,将两个数相除得到的商小数点后重复的数字段长度为2017,请计算x的值。
1.打印出小数点后10位数字。
2.打印出小数点后20位数字。
3.打印出小数点后40位数字。
4.打印出小数点后80位数字。
5.打印出小数点后160位数字。
6.打印出小数点后320位数字。
7.打印出小数点后640位数字。
8.打印出小数点后1280位数字。
9.打印出小数点后2560位数字。
10.打印出小数点后5120位数字。
11.问题来了,小数点后面的数字显然是无限重复的,那么,将重复的数字段找出来打印,告诉我这个数字段的长度是多长呢?
12.尝试找一下分子为1,分母为x,将两个数相除得到的商小数点后重复的数字段长度为2017,请计算x的值。
public class wangluoti { /**
* @param args
*/
public static void main(String[] args) {
int jg [] = get(1,2017,5120);//get参数1为分子,参数2为分母,参数3为打印小数点后N位数字
for (int i = 0; i < jg.length; i++) {
if(i%2000==0){
System.out.println();
}
if(i==1){
System.out.print(".");
}
System.out.print(jg[i]);
}
}
public static int[] get(int a,int b,int geshu){
int jieguo[]= new int[geshu];
int cishu = 0;
while(a/b==0){
jieguo[cishu] = 0;
a=a*10;
cishu++;
}
for(int i=cishu;i<geshu;i++){
jieguo[i]=a/b;
a=a%b*10;
}
return jieguo;
}
}