Java做acm所需要的基础知识之基本输入输出问题(二)
2014-11-24 07:43:07
·
作者:
·
浏览: 1
'+') {
b = cin.nextBigInteger();
System.out.println(a.add(b));
} else if (op == '-') {
b = cin.nextBigInteger();
System.out.println(a.subtract(b));
} else if (op == '*') {
b = cin.nextBigInteger();
System.out.println(a.multiply(b));
} else {
BigDecimal a1, b1, eps;
// 浮点数
String s1, s2, temp;
s1 = a.toString();
a1 = new BigDecimal(s1);
b = cin.nextBigInteger();
s2 = b.toString();
b1 = new BigDecimal(s2);
c = cin.nextInt();
// 接收精度控制,即保留几位小数的问题
eps = a1.divide(b1, c, 4);
if (c != 0) {
temp = "0.";
for (int i = 0; i < c; i++)
temp += "0";
DecimalFormat gd = new DecimalFormat(temp);
System.out.println(gd.format(eps));
} else
System.out.println(eps);
}
}
}
}
参考文章地址:
http://www.360doc.com/content/12/0619/15/7823806_219215040.shtml
http://blog.csdn.net/q3498233/article/details/5776028
关于Java做ACM知识的其他文章:
Java做acm所需要的基础知识之排序问题
Java做acm所需要的基础知识之基本输入输出问题