猫史档案馆


【Python作品分享】二分法求方程的近似解【作品秀】

用户:SUS丶UnSUS丶Un查看:0 回复:0 评论:0 创建时间:2020-10-25T12:13:35


【作品展示】

center_image

 

【作品介绍】

高中必修一二分法求解方程的近似解 Python实现算法开发

 

【作品源代码】

import math
"""
-------math库常用函数-------
math.e   自然常数e
math.pi  圆周率pi
math.degrees(x)	 弧度转度
math.radians(x)	 度转弧度
math.log(x[, base])	 返回x的以base为底的对数,base默认为e
math.log10(x)	 返回x的以10为底的对数
math.pow(x, y)	 返回x的y次方
math.sqrt(x)	 返回x的平方根
math.sin(x)	 返回x(弧度)的三角正弦值(cos,tan,asin,acos,atan亦如此)
"""

# 自行定义函数部分
def f(x):
    func = math.log(x) + 2 * x - 6   # 函数解析式
    return func


# 控制台获取输入
ε = float(input("请输入精度值:"))
a = float(input("请输入区间[a, b]中a的值:"))
b = float(input("请输入区间[a, b]中b的值:"))

# 循环主体
while math.fabs(a - b) >= ε:    # 为了程序的精度相匹配,使用math库中的fabs方法进行绝对值运算
    c = (a + b) / 2
    if f(a) * f(c) < 0:
        b = c
    elif f(c) == 0:
        a = c
        break
    else:
        a = c

print("函数的零点为:{}".format(a))

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页