如何在C

时间:2018-09-25 07:43:25

标签: c differential-equations

我们有以下数学公式通过欧拉方法求解微分方程

x n + 1 = x n + h

y n + 1 = y n + h * f(x n ,y n )< / p>

假设我们提供了y(x 0 )=任意值,那么我们有x 0 和y 0 ,h也有由用户提供。

我很难理解如何从用户那里接受函数f(x n ,y n ),因为该函数可以是代数,三角函数,指数函数或对数函数,函数类型为dy / dx =(表达式)。程序代码应能够求解用户输入的任何微分表达式,并且近似值的答案必须正确至小数点后4位。

可以将表达式作为String接受,但是我无法对String进行计算。任何建议或解决方案都将不胜感激。

欧拉方法的站点:http://calculuslab.deltacollege.edu/ODE/7-C-1/7-C-1-h-c.html

示例输入:

表达式输入:

dy / dx = x + 2y

初始条件输入:

x 0 = 0,y 0 = 0

输入步长:h = 0.25

输入您要为其查找解决方案的值:x = 1

示例输出:

output

0 个答案:

没有答案