24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1300  |  回复: 11
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

hedge

银虫 (小有名气)

[求助] 求助解方程!!

本人碰到一个数学难题!200金币!!初步考虑了一下,应是一个X的n+1次的方程!!

11.png
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meteor1245

金虫 (正式写手)

一饭之恩必偿,睚眦之怨必报

不是一般的复杂啊。好难
这个世界上重要的不是你站在什么位置,而是你正向着什么方向移动!
3楼2012-09-23 00:22:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 12 个回答

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
用1stOpt试了下,不知对否,参考下:
假设C=10,n取8
CODE:
Constant n=8, A0=1, B0=1, C=10; //n>4
ConstStr A1=1+x, B1=2+x;
ConstStr For(i=2:n+1)(A[i]=(i+x)*A[i-1]-A[i-2]),
         For(i=3:n)(B[i-1]=(i+x)*B[i-2]-B[i-3]);
Function A[n+1]-B[n-1]=C;

函数表达式 (((9+x)*(((8+x)*(((7+x)*(((6+x)*(((5+x)*(((4+x)*(((3+x)*(((2+x)*((1+x))-1))-((1+x))))-(((2+x)*((1+x))
            -1))))-(((3+x)*(((2+x)*((1+x))-1))-((1+x))))))-(((4+x)*(((3+x)*(((2+x)*((1+x))-1))-((1+x))))-(((2+x)
            *((1+x))-1))))))-(((5+x)*(((4+x)*(((3+x)*(((2+x)*((1+x))-1))-((1+x))))-(((2+x)*((1+x))-1))))-(((3+x)
            *(((2+x)*((1+x))-1))-((1+x))))))))-(((6+x)*(((5+x)*(((4+x)*(((3+x)*(((2+x)*((1+x))-1))-((1+x))))-(((2
            +x)*((1+x))-1))))-(((3+x)*(((2+x)*((1+x))-1))-((1+x))))))-(((4+x)*(((3+x)*(((2+x)*((1+x))-1))-((1+x))))
            -(((2+x)*((1+x))-1))))))))-(((7+x)*(((6+x)*(((5+x)*(((4+x)*(((3+x)*(((2+x)*((1+x))-1))-((1+x))))-(((2
            +x)*((1+x))-1))))-(((3+x)*(((2+x)*((1+x))-1))-((1+x))))))-(((4+x)*(((3+x)*(((2+x)*((1+x))-1))-((1+x))))
            -(((2+x)*((1+x))-1))))))-(((5+x)*(((4+x)*(((3+x)*(((2+x)*((1+x))-1))-((1+x))))-(((2+x)*((1+x))-1))))
            -(((3+x)*(((2+x)*((1+x))-1))-((1+x))))))))))-(((8+x)*(((7+x)*(((6+x)*(((5+x)*(((4+x)*(((3+x)*((2+x))
            -1))-((2+x))))-(((3+x)*((2+x))-1))))-(((4+x)*(((3+x)*((2+x))-1))-((2+x))))))-(((5+x)*(((4+x)*(((3+x)
            *((2+x))-1))-((2+x))))-(((3+x)*((2+x))-1))))))-(((6+x)*(((5+x)*(((4+x)*(((3+x)*((2+x))-1))-((2+x))))
            -(((3+x)*((2+x))-1))))-(((4+x)*(((3+x)*((2+x))-1))-((2+x))))))))-(10) = 5.684341886E-013
目标函数值(最小): 3.23117426778526E-25
x: -4.00073291639669

有多组解:
x: -0.18247902078968

x: -4.99044771453577

x: -6.01381051142547

jv2.JPG

2楼2012-09-22 20:56:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hedge

银虫 (小有名气)

引用回帖:
2楼: Originally posted by dingd at 2012-09-22 20:56:26
用1stOpt试了下,不知对否,参考下:
假设C=10,n取8

Constant n=8, A0=1, B0=1, C=10; //n>4
ConstStr A1=1+x, B1=2+x;
ConstStr For(i=2:n+1)(A=(i+x)*A-A),
         For(i=3:n)(B=(i+x)*B-B);
Funct ...

谢谢您的回复。理论上讲可以这么做。
但是当N比较大的时候可能就没有办法了!
我想得另想他途。
为了感谢您,以50金币为感谢!!
请管理员帮忙代发!!
4楼2012-09-24 10:34:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

用编程模式,再大的n都没问题(如果有解的话)
CODE:
Constant n=20, A0=1, B0=1, C=10; //n>4
ConstStr A1=1+x, B1=2+x;
Parameter x;
StartProgram [Pascal];
Procedure MainModel;
var i: integer;
    A, B: array of double;
Begin
    setlength(A, n+2);
    setlength(B, n);
    for i := 2 to n + 1 do begin
        if i = 2 then A[i]:=(i+x)*A1-A0
        else if i = 3 then A[i]:=(i+x)*A[2]-A1
        else A[i]:=(i+x)*A[i-1]-A[i-2];
    end;
    for i := 3 to n do begin
        if i = 3 then B[i-1]:=(i+x)*B1-B0
        else if i = 4 then B[i-1]:=(i+x)*B[2]-B1
        else B[i-1]:=(i+x)*B[i-2]-B[i-3];
    end;
    ObjectiveResult := sqr(A[n+1]-B[n-1]-C);
End;
EndProgram;

x: -10.9999999999994
5楼2012-09-24 18:37:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见