БлогNot. C++: Определённый интеграл методом прямоугольников. Разложение функции в ряд

C++: Определённый интеграл методом прямоугольников. Разложение функции в ряд

В учебных целях. Для той и другой задачи достаточно буквально по 3 строки кода.

Вот определённый интеграл методом средних прямоугольников от функции f(x)=sin(x) на интервале [a,b]=[0,π].

#include <stdio.h>
#include <math.h>

double f(double x) { return sin(x); }

void main() {
 double a=0,b=M_PI,n=100,dx=(b-a)/n,s=0;
 for (double x=a; x<=b+1e-6; x+=dx) s+=f(x+dx/2);
 printf ("\nI=%16.14lf",s*dx); getchar();
}

Вот разложение в ряд функции 1/(1-x) в точках x = 0.1, 0.2, ..., 0.9 (для каждого значения x выполняется 1000 шагов).

#include <stdio.h>
#include <math.h>

void main() {
 for (double x=0.1; x<=0.9; x+=0.1) {
  double s=0,x0=1;
  for (int i=0; i<1000; i++) { s+=x0; x0*=x; }
  printf ("\n%16.14lf,%16.14lf",s,1/(1-x));
 }
}

теги: алгоритм c++

17.12.2012, 14:32; рейтинг: 14028