试题 算法提高 编程求解根号3

思路:不断更新上下界。

资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
  进行数学运算是计算机的主要能力,利用计算机的重复计算能力可以帮助人们求解一些十分复杂的数学运算,比如高次方程、求根,求平方等。根号运算是数学的基本运算,对于无理数的求解,我们可以使用两边取值,不断逼近的方法进行求解。现要求你编程实现根号3的求解。
输入格式
  无输入
输出格式
  输出根号3的求解结果
样例输入

样例输出

数据规模和约定
  初始边界值分别为:low=1.0,high=2.0,更新边界值使用平均数,并要求循环20次后输出结果。

代码:

low = 1.0
high = 2.0
num = 3.0
aver = 0
for i in range(20):
    aver = (low+high) / 2
    result = aver*aver
    if result > num:
        high = aver
    else:
        low = aver
print('%.5f'%aver)

猜你喜欢

转载自blog.csdn.net/Python_Matlab/article/details/107572198