保留小数的方式

想要精确计算小数的值,不出现四舍五入的现象,可以使用(乘100 再取整 除以100.0), 取整 目的1: 不会出现四舍五入的现象 目的2: 消除其他小数的影响

做题经验: 建议在进行浮点数的计算时,把除法放最后 减少误差

编写程序,使用下面的公式计算并显示指定半径的圆的面积和周长,
圆的半径在程序运行时由用户输入。
当用户输入圆的半径后,计算圆的面积和周长,并将计算结果输出到屏幕上。

周长= 2 × 半径 × 𝜋

面积=半径×半径×𝜋

其中,圆周率定义为常量PI,其值为3.14159。

输入格式:
输入半径,可以是整数或小数。

输出格式:
对每一个输入的半径,在一行中输出它的周长和面积值,
面积和周长的值均保留两位小数且两个值用空格分隔。

输入样例:
在这里给出一组输入。例如:

2.5
输出样例:
在这里给出相应的输出。例如:

15.7 19.63
import java.util.*;

public class Main{
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        double r = scan.nextDouble();
        final double PI = 3.14159;
        double C = 2*PI*r;
        double S = PI*r*r;
        // 原数
        System.out.println(C + "     " + S); //15.70795     19.6349375
        // 正确答案
        System.out.println((int)(C*100)/100.0+" "+(int)(S*100)/100.0); // 15.7 19.63
        // 错误答案 存在四舍五入,导致错误( 和String.format() 一样都会错误 )
        System.out.printf("%.2f %.2f",C,S); // 15.71 19.63
    }
}

全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务