Извиняюсь, писал с работы, поэтому неопределенно. Вот код, уравнение из книги x^5+5*x^4-5=0, переходим к конечно-разностному уравнению: -5*y5+5*y1; и оно решается на ура. Любое же другое уравнение не решает. В основном вопрос о первых, начальных значениях y1,y2,y3,y4,y5. В книге написано, что что значения берутся произвольно, здесь значения соответственно : 0,0,0,1,1. Может, при задании другого уравнения необходимо как-то определенно задавать эти значения?
Код | program bernuli;
var N,max:integer; mY:array[0..1000]of real;
function newY(y5,y4,y3,y2,y1:real):real; begin //y=x^5+5*x^4-5 - отсюда выражаем x^5=-5*x^4-5*x^1 => -5*(y newY:=-5*y5+5*y1; end;
procedure foundY(N,S:integer); var i:integer; begin for i:=N to S do mY[i]:=newY(mY[i-N],0,0,0,mY[i-N+4]); end;
var i:integer; begin mY[0]:=0; mY[1]:=0; mY[2]:=0; mY[3]:=1; mY[4]:=1;
max:=40; foundY(5,max); writeln('Результаты:'); for i:=1 to max-1 do writeln(mY[i+1]/mY[i]); readln(); end.
|
|