C# 一元多次方程求解

private double FindRoot(double a, double b, double c, double d, double target)

{

double x0 = 1.0; // 初始猜测值

double epsilon = 0.0001; // 迭代精度

double f(double t) => a * t * t * t + b * t * t + c * t + d - target; // 定义方程

double df(double t) => 3 * a * t * t + 2 * b * t + c; // 方程的导数

double x1 = x0 - f(x0) / df(x0); // 牛顿迭代公式

while (Math.Abs(x1 - x0) > epsilon)

{

x0 = x1;

x1 = x0 - f(x0) / df(x0);

}

return x1;

}

相关推荐
仰泳的熊猫14 分钟前
题目1535:蓝桥杯算法提高VIP-最小乘积(提高型)
数据结构·c++·算法·蓝桥杯
那起舞的日子41 分钟前
动态规划-Dynamic Programing-DP
算法·动态规划
闻缺陷则喜何志丹1 小时前
【前后缀分解】P9255 [PA 2022] Podwyżki|普及+
数据结构·c++·算法·前后缀分解
每天吃饭的羊1 小时前
时间复杂度
数据结构·算法·排序算法
ValhallaCoder2 小时前
hot100-堆
数据结构·python·算法·
小小小米粒2 小时前
函数式接口 + Lambda = 方法逻辑的 “插拔式解耦”
开发语言·python·算法
风吹乱了我的头发~3 小时前
Day31:2026年2月21日打卡
开发语言·c++·算法
望舒5133 小时前
代码随想录day33,动态规划part2
java·算法·leetcode·动态规划
那起舞的日子3 小时前
牛客网刷算法的启发
算法
追随者永远是胜利者4 小时前
(LeetCode-Hot100)169. 多数元素
java·算法·leetcode·go