2023.3.20

今天又是学习python
我的代码如下:

点击查看代码
#     # 输入正整数x
#     x = int(input("请输入一个正整数x(x>1): "))
#
#     # 计算质因子展开式
#     factors = prime_factors(x)
#
#     # 输出质因子展开式
#     print(f"{x}=", end="")
#     print("*".join(str(factor) for factor in factors))
#
#
# if __name__ == "__main__":
#     main()


# def newton_raphson(f, df, x0, tol=1e-5, max_iter=100):
#     """
#     使用牛顿迭代法求解方程f(x) = 0的根
#     :param f: 方程f(x)
#     :param df: 方程f(x)的导数f'(x)
#     :param x0: 初始猜测值
#     :param tol: 容忍误差
#     :param max_iter: 最大迭代次数
#     :return: 方程的根
#     """
#     x = x0
#     for _ in range(max_iter):
#         fx = f(x)
#         dfx = df(x)
#         if dfx == 0:
#             print("导数为零,无法继续迭代")
#             return None
#         x_new = x - fx / dfx
#         if abs(x_new - x) < tol:
#             return x_new
#         x = x_new
#     print("达到最大迭代次数,可能未找到根")
#     return x
#
#
# def solve_cubic(a, b, c, d, x0):
#     """
#     求解三次方程ax^3 + bx^2 + cx + d = 0
#     :param a: 方程系数a
#     :param b: 方程系数b
#     :param c: 方程系数c
#     :param d: 方程系数d
#     :param x0: 初始猜测值
#     :return: 方程的根
#     """
#     # 定义方程f(x) = ax^3 + bx^2 + cx + d
#     f = lambda x: a * x ** 3 + b * x ** 2 + c * x + d
#     # 定义方程的导数f'(x) = 3ax^2 + 2bx + c
#     df = lambda x: 3 * a * x ** 2 + 2 * b * x + c
#     return newton_raphson(f, df, x0)
#
#
# def main():
#     # 输入方程系数a, b, c, d和实数x
#     a, b, c, d, x = map(float, input("请输入方程系数a, b, c, d和实数x,数据间以空格为间隔: ").split())
#
#     # 求解方程
#     root = solve_cubic(a, b, c, d, x)
#
#     # 输出结果,保留两位小数
#     print(f"{root:.2f}")
#
#
# if __name__ == "__main__":
#     main()
posted on 2025-03-20 22:32  睡觉时候不困  阅读(8)  评论(0)    收藏  举报