////////////////////////////////////////////////////////////////////////////////
// << j174.java >>
//
// 基礎(7):分数a/b (a<b)の計算
//
// 分数を小数点以下100桁まで求める。
//
// 計算法:筆算をまねる。
//
// 1/7=0.142857142...の計算 1/8=0.125の計算
//
// 1×10=7×1+3 1×10=8×1+2
// 3×10=7×4+2 2×10=8×2+4
// 2×10=7×2+6 4×10=8×5+0
// 6×10=7×8+4
// 4×10=7×5+5
// 5×10=7×7+1
// 1×10=7×1+3
// ・・・
//
////////////////////////////////////////////////////////////////////////////////
class j174 {
public static void main(String args[]) {
int a,b;
int n; // 求める桁数。
int d[] = new int[101]; // 求める分数。
a = 1; b = 7;
n = 100;
System.out.println(a + "/" + b);
for( int i=1; i<=n; i++ ) {
a = a*10; d[i] = a/b; a = a%b;
}
// 分数の表示。
int j = 0;
for( int i=1; i<=n; i++ ) {
System.out.print(d[i]);
j++;
if( j%5 == 0 ) { System.out.print(" "); }
if( j%50 == 0 ) { System.out.println(); }
}
}
}
実行結果
% javac j174.java
% java j174
1/7
14285 71428 57142 85714 28571 42857 14285 71428 57142 85714
28571 42857 14285 71428 57142 85714 28571 42857 14285 71428