Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Практическая работа по "Численному методу в программировании "

Автор:   •  Ноябрь 20, 2022  •  Практическая работа  •  1,391 Слов (6 Страниц)  •  100 Просмотры

Страница 1 из 6

Федеральное государственное образовательное бюджетное учреждение

высшего образования

«Финансовый университет при Правительстве РФ»

КОЛЛЕДЖ ИНФОРМАТИКИ И ПРОГРАММИРОВАНИЯ

Практическая работа № 8

по дисциплине ЕН.04 Численные методы в программировании

Выполнил студент

Болоцкий Дмитрий

Группа 3ПКС-320

Вариант: 6

Проверил: преподаватель

____________ ___________

оценка подпись

Москва, 2022

Тема: Вычисление интегралов методами численного интегрирования.

Вычислить значение определенного интеграла аналитически (если это возможно) и численно тремя методами для N = 10. Результаты расчета представить в виде таблицы, сделать выводы:

Листинг:

#include <iostream>

#include <math.h>

using namespace std;

int main()

{

setlocale(LC_ALL, "Russian");

cout << "формула x + cos(y/2)\n";

cout << " Метод Эйлера\n";

cout << "границы:от -2 до 1\n";

float a = -2;

float b= -1;

float h = 0.1;

float y = 3;

cout << "шаг равен " << h<<endl;

cout << "y0 равен " << y<<endl;

float mas[11][5];

cout<<"i ti yi y(ан) R(i)"<<endl;

for (int i = 0; i < 11; ++i)

{

for (int j = 0; j < 5; ++j)

{

mas[0][0] = i, mas[0][1] =a, mas[0][2] = 3, mas[0][3]=y, mas[0][4]=mas[0][3]-mas[0][2],

mas[1][0] = i, mas[1][1] =mas[0][1]+h, mas[1][2] =mas[0][2]+0.1*(mas[0][1]+cos((mas[0][2])/2)), mas[1][3]=mas[0][2]+0.05*(mas[0][1]+cos((mas[0][2])/2)), mas[1][4]=mas[1][3]-mas[1][2],

mas[2][0] = i, mas[2][1] =mas[1][1]+h, mas[2][2] =mas[1][2]+0.1*(mas[1][1]+cos((mas[1][2])/2)), mas[2][3]=mas[1][2]+0.05*(mas[1][1]+cos((mas[1][2])/2)), mas[2][4]=mas[2][3]-mas[2][2],

mas[3][0] = i, mas[3][1] =mas[2][1]+h, mas[3][2] =mas[2][2]+0.1*(mas[2][1]+cos((mas[2][2])/2)), mas[3][3]=mas[2][2]+0.05*(mas[2][1]+cos((mas[2][2])/2)), mas[3][4]=mas[3][3]-mas[3][2],

mas[4][0] = i, mas[4][1] =mas[3][1]+h, mas[4][2] =mas[3][2]+0.1*(mas[3][1]+cos((mas[3][2])/2)), mas[4][3]=mas[3][2]+0.05*(mas[3][1]+cos((mas[3][2])/2)), mas[4][4]=mas[4][3]-mas[4][2],

mas[5][0] = i, mas[5][1] =mas[4][1]+h, mas[5][2] =mas[4][2]+0.1*(mas[4][1]+cos((mas[4][2])/2)), mas[5][3]=mas[4][2]+0.05*(mas[4][1]+cos((mas[4][2])/2)), mas[5][4]=mas[5][3]-mas[5][2],

mas[6][0] = i, mas[6][1] =mas[5][1]+h, mas[6][2] =mas[5][2]+0.1*(mas[5][1]+cos((mas[5][2])/2)), mas[6][3]=mas[5][2]+0.05*(mas[5][1]+cos((mas[5][2])/2)), mas[7][4]=mas[6][3]-mas[6][2],

mas[7][0] = i, mas[7][1] =mas[6][1]+h, mas[7][2] =mas[6][2]+0.1*(mas[6][1]+cos((mas[6][2])/2)), mas[7][3]=mas[6][2]+0.05*(mas[6][1]+cos((mas[6][2])/2)), mas[7][4]=mas[7][3]-mas[7][2],

mas[8][0] = i, mas[8][1] =mas[7][1]+h, mas[8][2] =mas[7][2]+0.1*(mas[7][1]+cos((mas[7][2])/2)), mas[8][3]=mas[7][2]+0.05*(mas[7][1]+cos((mas[7][2])/2)), mas[8][4]=mas[8][3]-mas[8][2],

mas[9][0] = i, mas[9][1] =mas[8][1]+h, mas[9][2] =mas[8][2]+0.1*(mas[8][1]+cos((mas[8][2])/2)), mas[9][3]=mas[8][2]+0.05*(mas[8][1]+cos((mas[8][2])/2)), mas[9][4]=mas[9][3]-mas[9][2],

mas[10][0] = i, mas[10][1] =mas[9][1]+h, mas[10][2] =mas[9][2]+0.1*(mas[9][1]+cos((mas[9][2])/2)), mas[10][3]=mas[9][2]+0.05*(mas[9][1]+cos((mas[9][2])/2)), mas[10][4]=mas[10][3]-mas[10][2],

cout << mas[i][j] << " ";

}

cout << endl;

}

cout << "Rmax= "<< 0.096463<<endl;

cout << " Модифицированный метод Эйлера: " << endl;

float mas1[11][7];

cout<<"i ti yi (h/2)f(t,y) t(i+1/2) y(i+1/2) hf(i+1/2)"<<endl;

for (int i = 0; i < 11; ++i)

{

for (int j = 0; j < 7; ++j)

{

mas1[0][0] = i, mas1[0][1] =a, mas1[0][2] = 3, mas1[0][3]=0.05*(mas1[0][1]+cos((mas1[0][2])/2)), mas1[0][4]=a+0.05, mas1[0][5]=mas1[0][3]+mas1[0][2],

...

Скачать:   txt (15.1 Kb)   pdf (60.8 Kb)   docx (12.7 Kb)  
Продолжить читать еще 5 страниц(ы) »
Доступно только на Essays.club