求解指数方程1=e^(a+bx) - e^(cx) 的解.其中a=0.71098 ,b=0.41484 ,c=0.82968 ,解出x的值,若用程序解的请附上程序.不好意思,不小心把b ,c 弄成了2倍关系,严格的说他们不是2倍关系,最主要的是求a,b,c为

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 00:37:38
求解指数方程1=e^(a+bx) - e^(cx) 的解.其中a=0.71098 ,b=0.41484 ,c=0.82968 ,解出x的值,若用程序解的请附上程序.不好意思,不小心把b ,c 弄成了2倍关系,严格的说他们不是2倍关系,最主要的是求a,b,c为

求解指数方程1=e^(a+bx) - e^(cx) 的解.其中a=0.71098 ,b=0.41484 ,c=0.82968 ,解出x的值,若用程序解的请附上程序.不好意思,不小心把b ,c 弄成了2倍关系,严格的说他们不是2倍关系,最主要的是求a,b,c为
求解指数方程
1=e^(a+bx) - e^(cx) 的解.
其中a=0.71098 ,b=0.41484 ,c=0.82968 ,解出x的值,若用程序解的请附上程序.
不好意思,不小心把b ,c 弄成了2倍关系,严格的说他们不是2倍关系,最主要的是求a,b,c为一般情况下的通解,应该会用到数学软件!诸如1楼之类的,不会就不要滥竽充数了!

求解指数方程1=e^(a+bx) - e^(cx) 的解.其中a=0.71098 ,b=0.41484 ,c=0.82968 ,解出x的值,若用程序解的请附上程序.不好意思,不小心把b ,c 弄成了2倍关系,严格的说他们不是2倍关系,最主要的是求a,b,c为
如果a,b,c的值不知道,那么方程是不可能得到通解的,对于这些超越方程,a,b,c的值知道的情况下,尚且只能得到近似解,而不能得到解析解
更何况a,b,c的值不知道的情况:
下面附上a,b,c的值知道是的计算机软件近似求解
用MATLAB软件求解
ans =
-.45659840144942392104192926055048
.45659840144942392104192926055048
附上图片可知方程确实仅有两根

b=0.41484 , c=0.82968 =>c=2b
e^(a+bx)-e^(2bx)=1
e^a*e^(bx)-[e^(bx)]^2=1
令e^(bx)=t
则te^a-t^2-1=0
t^2-te^a+1=0
一元二次方程组,很麻烦,自己解吧

设f(x)= e^(a+bx) - e^(cx)-1,则它的导数为f1(x)=be^(a+bx) - ce^(cx)
迭代公式
X(n+1)=X(n)- f(x(n))/ f1(x(n))
f(0) = e^a - e^0-1= e^0.71098>2
f(1) = e^(a+b) - e^(c)-1= e^1.12582 - e^0.82968-1<0
计...

全部展开

设f(x)= e^(a+bx) - e^(cx)-1,则它的导数为f1(x)=be^(a+bx) - ce^(cx)
迭代公式
X(n+1)=X(n)- f(x(n))/ f1(x(n))
f(0) = e^a - e^0-1= e^0.71098>2
f(1) = e^(a+b) - e^(c)-1= e^1.12582 - e^0.82968-1<0
计算程序:
(1)取X=0.5,
(2)计算X1= X- f(X)/ f1(X)
(3)如果∣X1-X∣<0.000001,输出X1,停止计算。
(4)X=X1
(5)转(2)
这是著名的Newton法
X=0.4562118957
Turbo Pascal程序
program newton(input,output);
uses wincrt;
CONST a=0.71095;b=0.41484;c=0.82968;
var x0,x,f22,f11:real;
function f1(x:real):real;
begin
f1:=exp(a+b*x)-exp(c*x)-1
end;
function f2(x:real):real;
begin
f2:=b*exp(a+b*x)-c*exp(c*x)
end;
begin
read(x);
repeat
x0:=x;
f11:=f1(x0); f22:=f2(x0);
x:=x0-f11/f22;
writeln(x:10:10)
until abs(x-x0)<1e-10
end.

收起

人工计算是不现实的,用matlab的话几个命令就得出结果了
源程序:
>> syms x
>> a=0.71098;b=0.41484;c=0.82968;
>> solve(exp(a+b*x)-exp(c*x)-1)

ans =

[ 25000/10371*log(1/2*exp(35549/50000)+1/2*(exp...

全部展开

人工计算是不现实的,用matlab的话几个命令就得出结果了
源程序:
>> syms x
>> a=0.71098;b=0.41484;c=0.82968;
>> solve(exp(a+b*x)-exp(c*x)-1)

ans =

[ 25000/10371*log(1/2*exp(35549/50000)+1/2*(exp(35549/50000)^2-4)^(1/2))]
[ 25000/10371*log(1/2*exp(35549/50000)-1/2*(exp(35549/50000)^2-4)^(1/2))]
就是不知道它为什么不直接得出结果,然后我就再把结果运行一下
>> 25000/10371*log(1/2*exp(35549/50000)+1/2*(exp(35549/50000)^2-4)^(1/2))
ans =
0.4566
>> 25000/10371*log(1/2*exp(35549/50000)-1/2*(exp(35549/50000)^2-4)^(1/2))
ans =
-0.4566
其他类型的数据也一样,可以定义不同的a、b、c
用matlab比较好,它的功能比较强大

收起

得你的分真不容易啊,你是不是写错题了啊?你再看看题,给你个小办法,等号两边求对数

把y=e^(a+bx) - e^(cx)的波形画出来,看它和y=1的交点就知道解了。
告诉你个很简单通用的方法。
用excel就可以画波形,自变量自己给:
第一格填1、第二格填2、然后选中1、2格,再点右下角小黑点往后拖就会自动生成1、2、3...的序列,自变量可以根据需要修改精度如 0、0.1、0.2...。
再根据公式生成每个自变量对应的函数值。
然后生...

全部展开

把y=e^(a+bx) - e^(cx)的波形画出来,看它和y=1的交点就知道解了。
告诉你个很简单通用的方法。
用excel就可以画波形,自变量自己给:
第一格填1、第二格填2、然后选中1、2格,再点右下角小黑点往后拖就会自动生成1、2、3...的序列,自变量可以根据需要修改精度如 0、0.1、0.2...。
再根据公式生成每个自变量对应的函数值。
然后生成图表,看它与1的交点。
如果觉得方法简单耐用就给分我~

收起