ФІО = Горбаченко В.А. Запитання:#include #include // тут rand (), srand () #include #include #include #include // КОНСТАНТИ #define a -2.0 #define b 0.7 #define h 0.3 #define MAX_X 10 #define MAX_Y 2 // МАСИВ double mas[MAX_X][MAX_Y]={ // 10 x 2 {-2.11 ,0.0003}, {-1.8 ,0.0096}, {-1.5 ,0.0674}, {-1.15 ,0.1700}, {-0.95 ,0.1818}, {-0.22 ,0.0763}, {-0.1 ,0.0693}, {0.34 ,0.1031}, {0.7 ,0.5819}, {1.0 ,1.00}}; using namespace std; // ============================================================================= double func_a1(double x){// апроксимація поліном Лагранжа double sum=0; // сума. Волков. Стор 32 формула 5 for (int i = 0 ; i < MAX_X ; i++){ double z=1; for (int j = 0 ; j < MAX_X ; j++) { if (i!=j) z*=(x-mas[j][0])/(mas[i][0]-mas[j][0]); } sum+=z*mas[i][1]; } return sum; } // ============================================================================= double func_b(double x){ // похідна 1 // Центральная разностная производная return (func_a1(x+h)-func_a1(x-h))/(h*2); } //============================================================================== double func_c(double x){// похідна 2 // ФОРМУЛА | Друга похідна. Конспект лекцій return (func_a1(x+h)+func_a1(x-h)-2*func_a1(x) )/(h*h); } //============================================================================== int main(int argc, char* argv[]) { for (double x = a ; x <= b+h ; x+=h){ // i <= b+h тому що необхідно захопити значення 9, чомусь не захоплює printf( "%.2f %9.6f %9.6f %9.6f \n\r", // Завдання a : за формулою, Лагнанж 9 точок x, func_a1(x), // Завдання б: похідна 1 func_b(x), // Завдання в: друга похідна 2 func_c(x) ); } system("pause"); return 0; } //--------------------------------------------------------------------------- ====================================