함수 f (x) = 5 * sin (x) * exp (-x-0.2) -1이 주어졌으며 고정 소수점 반복을 사용하여 루트를 찾고 싶습니다. 지시는 x = g (x)가되도록 방정식을 다시 정렬하라고했습니다. 고정 소수점 반복
그래서 그것을 변환하는 X = -ln [1/(5sin (X)] - 0.2I는 while 루프 만족 × (1 + I) = g (I)의 관계 등을 할 나는 x가 수렴 할 때까지. 나는 여기에 '수렴하는'의미 추측하고, X를 업데이트하는 것이 복근 (X (I) -x (내가 + 1)) 확신 아주 작은, 그러나 아니다.
x(1)=1;
while abs(x(i+1)-x(i)>0.0001 && i<50
g(i)=-log(1/(5*sin(x(i))))-0.2;
x(i+1)=g(i);
end
내 코드가 분명히 잘못되었습니다. 내가 좋아하는, i = i + 1을 어딘가에 업데이트해야한다는 것을 알고 있지만 어떻게 적용해야할지 모르겠다. 또한 x (1 + 1)을 선언하지 않은 것을 볼 수있다. 처음에는 오류가 발생하지만 해결 방법은 없습니다.
도와주세요. 당신이 시작하는 X의 하나 개의 값이 있기 때문에
while 루프를 사용하여 수행 할 수있는 방법이 있습니까? for 루프를 사용하는 방법을 알고 있었지만 명확하게하지 않았다고 생각합니다. –