3. 뉴턴 교체 법 은 방정식 의 뿌리 를 구한다.

6618 단어 알고리즘
뉴턴 교체 법 은 방정식 의 뿌리 를 구한다.
인용문: 뉴턴 교체 법 으로 다음 방정식 의 값 은 x 부근의 뿌리 와 같다. 2 x 3 - 4 x 2 + 3 x - 6 = 0 2x ^ 3 - 4x ^ 2 + 3 x - 6 = 0 2x 3 - 4x2 + 3 x - 6 = 0 입력 x.출력: 방정식 은 x 부근의 뿌리 와 같 고 한 줄 을 차지한다.입력 예시: 1.5 출력 실례: 2
1. 뉴턴 교체 공식 유도
다항식 f (x) f (x) f (x) 를 설정 하고 r 는 f (x) f (x) f (x) 의 뿌리 를 설정 합 니 다.선택 x 0 x0 x0 은 r 의 초기 근사치 이다.과 점 (x 0, f (x 0) (x 0, f (x 0)) (x0, f (x0)) 은 곡선 y = f (x) y = f (x) y = f (x) y = f (x) y (x) 의 접선 L 을 한다.득 L: y = f (x 0) + f ′ (x 0) (x - x 0) y = f (x 0) + f '(x 0) (x - x 0) y = f (x0) + f ′ (x0) (x - x0) 는 L 과 x 축의 교점 의 가로 좌표 가 x 1 = x 0 - f (x 0) f ′ (x 0) x1=x_0 - \ frac {f (x 0)} {f '(x 0)} x1 = x0 - f ′ (x0) f (x0), 그러면 x 1 x1 x1 은 r 의 근사 값 이다.과 점 (x 1, f (x 1) (x 1, f (x 1)) (x1, f (x1)) 은 곡선 y = f (x) y = f (x) y = f (x) y = f (x) y (x) 의 접선 을 하고 이 접선 과 x 축 교점 의 가로 좌표 x 2 = x 1 - f (x 1) f ′ (x 1) x2=x_1 - \ frac {f (x 1)} {f '(x 1)} x2 = x1 - f ′ (x1) f (x1), x 2 x2 x2 는 r 의 2 차 근사치 이다.이상 의 과정 을 반복 하면 r 의 유사 치 서열 을 얻 을 수 있 습 니 다.그 중에서 x n + 1 = x n - f (x n) f ′ (x n) x{n+1}=x_n - \ frac {f (x n)} {f '(x n)} xn + 1 = xn - f ′ (xn) f (xn) 를 r 의 n + 1 회 근사 값 이 라 고 부른다.그래서 x n + 1 = x n - f (x n) f ′ (x n) x{n+1}=x_n - \ frac {f (x n)} {f '(x n)} xn + 1 = xn - f ′ (xn) f (xn) 는 뉴턴 교체 공식 이다.
2. 뉴턴 교체 공식 핵심 사상
핵심 사상: 테일러 급수 의 선형 항 유사 계산 함수 f (x) = 0 f (x) = 0 f (x) = 0 f (x) = 0 의 뿌리 를 사용한다.f (x) f (x) f (x) 를 점 x 0 x0 x0 의 한 분야 에서 테일러 급수 로 전개 되 고 선형 부분 (즉 테일러 가 전개 하 는 앞의 두 가지) 을 취하 여 0 과 같 게 한다.테일러 급수 전개 식: f (x) = f (x 0) + f ′ (x 0) (x - x 0) + f ′ (x 0) (x - x 0) 2 2! +... +f ( n ) ( x 0 ) ( x − x 0 ) n n ! + R n ( x ) f(x)=f(x_0)+f'(x_0)(x-x_0)+\frac{f''(x_0)(x-x_0)^2}{2!}+…+\frac{f^{(n)}(x_0)(x-x_0)^n}{n!}+R_n(x) f(x)=f(x0​)+f′(x0​)(x−x0​)+2!f′′(x0​)(x−x0​)2​+…+n!f (n) (x0) (x − x0) n + Rn (x) 선형 부분: f (x) = f (x) = f (x 0) + f ′ (x 0) (x − x 0) f (x) = f (x 0) + f (x 0) (x - x 0) f (x) = f (x) = f (x) = f (x0) + f (x0) (x - x - x 0) (x - x - x - x0) f (x) 를 0 으로 하고 이 를 비 선형 방정식 f (x) f (x) = 0 f (x) = 0 f (x (x) = 0 f (x) = 0 f (x) = 0 f (x) = 0 f (x) = 0 f (x) = 0 f (x) = 0 f (x) 진짜 (x) x = x0 - \ frac {f (x)} {f '(x)} x = x0 - f ′ (x) f (x) 를 홍보 하면 뉴턴 교체 공식 을 얻 을 수 있다. x n + 1 = x n - f (x n) f ′ (x n) x{n+1}=x_n-\frac{f(x_n)}{f'(x_n)} xn+1​=xn​−f′(xn​)f(xn​)​
#include 
#include 
using namespace std;

double f(double x)//  
{
    return 2*pow(x,3)-4*pow(x,2)+3*x-6;
}

double f1(double x)//   
{
    return 6*pow(x,2)-8*x+3;
}

int main()
{
	float x;
	cin >> x;
	do
	{
		x = x - f(x)/f1(x);
	}while( f(x)>1e-5 || f(x)<-(1e+5) );//    ,    

	cout << x << endl;
}

좋은 웹페이지 즐겨찾기