方程式 がf(x)=exp(x)+3x^2
あり、固定小数点反復法を使用してその方程式を解くために使用します。これが私のf(x)=0
コードx=?
ですscilab
function fixed_point(fung,x0,err)
x=zeros(100);
ea = 100;
i = 1;
x(i)=x0;
printf(" \t i \t x(i) \t ea(%%)");
printf("\n\t %d \t %f \t %f", i, x(i), abs(ea));
while (abs(ea) >err) do
i=i+1;
z =x(i-1);
x(i) = evstr(fung)+z;
ea =100*(x(i)-x(i-1))/x(i);
printf("\n\t %d \t %f \t %f", i, x(i), abs(ea));
end
printf("\n Akar = %f", x(i));
endfunction
次に、次を使用して呼び出します。
fixed_point ('exp(z)-(3 .* z .*z)',0.00000000001,0.5)
私はx(i)=inf
ついに得ましたが、それは答えではないと思います.誰かが私のコードの何が問題なのか説明してもらえますか?