Семинар 1 (Вариант 5)
Условие: Напишите программу расчета по двум формулам.
, 
Листинг программы
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
double z1 = 0, z2 = 0, a = 0;
cout << "Введите a: ";
cin >> a;
z1 = 1 - sin(2 * a) * sin(2 * a) / 4 + cos(2 * a);
z2 = pow(cos(a), 2) + pow(cos(a), 4);
cout << "z1 = " << z1 << endl;
cout << "z2 = " << z2 << endl;
return 0;
}
Скриншот работы

Семинар 2 (Вариант 5)
Условие: Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на интервале от xнач до xкон с шагом dx с точностью ε. Таблицу снабдить заголовком и шапкой. Каждая строка должна содержать значение аргумента, значение функции и количество просуммированных членов ряда.

Листинг программы
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
double x0 = 0, xn = 0, eps = 0, dx = 0;
cout << "Введите xнач, xкон, dx и eps: ";
cin >> x0 >> xn >> dx >> eps;
cout << endl << "Табулирование функции" << endl;
cout << " x y n" << endl;
cout.setf(ios::right | ios::fixed);
for (double x = x0; x < xn + dx / 2; x += dx)
{
double sum = 1, ai = x;
int i = 1;
for (i = 1; abs(ai) > eps; i++)
{
ai *= -x * x / (2 * i) / (2 * i + 1);
sum += ai;
}
cout << setw(6) << setprecision(2) << x
<< setw(12) << setprecision(6) << sum
<< setw(4) << i << endl;
}
return 0;
}
Скриншот работы

Семинар 3 (Вариант 5)
Условие:
1. Найти максимальный элемент массива
2. Найти сумму элементов массива, расположенных до последнего положительного элемента.
3. Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a, b]. Освободившиеся в конце массива элементы заполнить нулями.
Листинг программы
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
int n;
double* arr;
cout << "Введите размер массива: ";
cin >> n;
arr = new double[n];
cout << "Введите элементы массива: ";
for (int i = 0; i < n; i++)
cin >> arr[i];
int imax = 0;
for (int i = 1; i < n; i++)
if (arr[i] > arr[imax])
imax = i;
cout << "Максимальный элемент: " << arr[imax] << endl;
int ilastpos = n - 1;
double sum = 0;
for (ilastpos = n - 1; ilastpos >= 0 && arr[ilastpos] <= 0; ilastpos--) {}
for (int i = 0; i < ilastpos; i++)
sum += arr[i];
cout << "Сумма элементов перед последним положительным: " << sum << endl;
double a, b;
cout << "Введите отрезок [a, b]: ";
cin >> a >> b;
for (int i = 0; i < n; i++)
{
if (abs(arr[i]) >= a && abs(arr[i]) <= b)
{
for (int j = i + 1; j < n; j++)
arr[j - 1] = arr[j];
arr[n - 1] = 0;
i--;
}
}
cout << "Массив после сжатия: ";
for (int i = 0; i < n; i++)
{
cout << arr[i] << " ";
}
cout << endl;
delete[] arr;
return 0;
}
Скриншот работы







