N进制小数
public class nFloat {
public static String fun(double dTestNo, int iBase) {
int bit = 10; //保留10位小数
int[] iT = new int[bit];
int iNo;
String result = "";
for (iNo = 0; iNo < bit; iNo++) {
dTestNo *= iBase;
iT[iNo] = (int) dTestNo; // 填空
if (dTestNo >= 1.0) dTestNo -= iT[iNo]; // 填空
}
result = result + "0.";
for (iNo = 0; iNo < bit; iNo++)
result = result + iT[iNo];
result = result + "\n";
return result;
}
public static void main(String[] args) {
String result = "";
Scanner scanner = new Scanner(System.in);
int n = 0;
double dTestNo = 0.795;
while (scanner.hasNext()) {
dTestNo = scanner.nextDouble();
n = scanner.nextInt();
if ((dTestNo - 0.0) > 0.0000009 & n != 0) {
result = result + fun(dTestNo, n);
} else {
System.out.println(result);
}
}
}
}
分享文章:N进制小数
转载注明:http://scyanting.com/article/jhpidc.html