C 언어로 배우는 사다리꼴 공식에 의한 적분의 근사
사다리꼴 공식이란?
아래 그림의 푸른 선이가 적분하고 싶은 함수의 그래프, a에서 b까지를 적분하고 싶은 범위(왼쪽 갈색 선에서 오른쪽 갈색 선)라고 생각해 주세요. 사다리꼴 공식은 녹색과 노란색 부분의 면적을 적분한 값이라고 생각하는 것입니다. 그 값은
\frac{(f(a) + f(b)) (b - a)}{2}
될거야.
그러나 그림에서 보는 바와 같이 녹색 부분이 분명히 불필요합니다. 그러므로 $a$와 $b$ 사이에 $c =\frac{a+b}{2}$ 라는 점을 제공합시다. 녹색과 노란색 부분의 면적의 합은
\frac{(f(a) + f(c)) (c - a) + (f(c) + f(b)) (b - c)}{ 2 }
네요. 그러면 조금 전의 그림보다 녹색 부분이 줄어드는 것을 알 수 있습니다. 이것이 사다리꼴 공식입니다. $a$와 $b$ 사이에 점이 있을수록 값이 정확해집니다.
!
소스 코드
integral.c#include <stdio.h>
#include <math.h>
#define EPS (1.0e-6)
#define f(x) ((x)*(x))
int main(){
double a = 0, b = 2, sum = 0;
for(double x = a; x < b; x += EPS){
sum += (f(x) + f(x+EPS));
}
sum *= (EPS / 2);
printf("%f\n", sum);
}
Reference
이 문제에 관하여(C 언어로 배우는 사다리꼴 공식에 의한 적분의 근사), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/stmtk/items/0d43372950fe3ee674be
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
\frac{(f(a) + f(b)) (b - a)}{2}
\frac{(f(a) + f(c)) (c - a) + (f(c) + f(b)) (b - c)}{ 2 }
integral.c
#include <stdio.h>
#include <math.h>
#define EPS (1.0e-6)
#define f(x) ((x)*(x))
int main(){
double a = 0, b = 2, sum = 0;
for(double x = a; x < b; x += EPS){
sum += (f(x) + f(x+EPS));
}
sum *= (EPS / 2);
printf("%f\n", sum);
}
Reference
이 문제에 관하여(C 언어로 배우는 사다리꼴 공식에 의한 적분의 근사), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/stmtk/items/0d43372950fe3ee674be텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)