这是我需要编程的功能:
f(x)= 1 - e ^ cos(x)
这是教授在另一个例子中为课程写出来的,所以我只是在这个问题中用函数复制了同样的东西:
f[x_] = 1 - E^Cos[x];
a = 4;
Plot[f[x], {x, 0, 10}]
i = 1;
While[i <= 1000,
g[x_] = D[f[x], x];
b = a - f[a]/g[a];
a = b;
c = Abs[a - prev a]
If[c < 10^-5,
i = 10000;
i++
];]
Print[a];
Print[f[a]];
Print[i];
我的问题是它没有迭代近似根。我做错了什么?
答案 0 :(得分:1)
您的代码有一些拼写错误,加上prev a
需要定义。
f[x_] = 1 - E^Cos[x];
a = 4;
Plot[f[x], {x, 0, 10}]
i = 1;
While[i <= 1000,
g[x_] = D[f[x], x];
b = a - f[a]/g[a];
preva = a;
a = N[b];
c = Abs[a - preva];
If[c < 10^-5,
i = 10000,
i++];]
Print[a];
Print[f[a]];
Print[i];