牛客[编程题] HJ107 求解立方根

发布时间 2023-11-10 12:35:07作者: 张德长
HJ107 求解立方根
中等  通过率:27.15%  时间限制:1秒  空间限制:32M
 

描述

计算一个浮点数的立方根,不使用库函数。
保留一位小数。

数据范围:|val| \le 20 \

输入描述:

待求解参数,为double类型(一个实数)

输出描述:

输出参数的立方根。保留一位小数。

示例1

输入:
19.9
输出:
2.7

示例2

输入:
2.7
输出:
1.4

 

 

public class Program {
    public static void Main() {
        string line;
        while ((line = System.Console.ReadLine ()) !=
                null) { // 注意 while 处理多个 case
            float input = float.Parse(line);
            float res=0;
            float diff = 100;
            float diff2;
            float temp = -7;
            for (int i = 0; i < 140; i++) {
                temp +=  0.1f;
                diff2 = temp * temp * temp - input;
                if (diff2 < 0)diff2 = -diff2;
                if (diff2 < diff) {
                    diff = diff2;
                    res = temp;
                }
            }

            System.Console.WriteLine(res.ToString("0.0"));
        }
    }
}