Файл: Лабораторные работы по программированию на языке С++.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 07.05.2025
Просмотров: 688
Скачиваний: 2
Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Лабораторные работы «Программирование на С++» |
4 |
Содержание |
|
Лабораторная работа №1. |
|
Тема: «Программирование линейных вычислительных процессов» .................................. |
5 |
Лабораторная работа №2. |
|
Тема «Программирование разветвляющихся вычислительных процессов» ..................... |
7 |
Лабораторная работа №3. |
|
Тема «Условный оператор в С++. Вычисление значения функции, проверка попадания |
|
точки в область на плоскости» ................................................................................................ |
9 |
Лабораторная работа №4. |
|
Тема «Программирование циклических вычислительных процессов с варьируемым |
|
параметром цикла» ................................................................................................................ |
13 |
Варианты заданий .................................................................................................................. |
19 |
Лабораторная работа №7. |
|
Тема «Применение функций для решения нелинейных уравнений» ............................... |
22 |
Лабораторная работа № 8. |
|
Тема «Обработка одномерных массивов» .......................................................................... |
23 |
Лабораторная работа № 9 |
|
Тема «Указатели и динамические массивы. Использование указателей в качестве |
|
аргументов функций» ............................................................................................................. |
25 |
Лабораторная работа № 10. |
|
Тема «Обработка двумерных массивов» ............................................................................. |
28 |
Лабораторная работа № 11. |
|
Тема «Программирование задач линейной алгебры» ........................................................ |
31 |
Лабораторная работа № 12 . |
|
Тема «Структуры в С++» ....................................................................................................... |
35 |
Лабораторная работа № 13 . |
|
Тема «Текстовые и двоичные файлы в С++» ...................................................................... |
37 |
Лабораторная работа № 14 . |
|
Тема «Динамические структуры в С++. Текстовые и двоичные файлы» ......................... |
39 |
Лабораторная работа №15. |
|
Тема «Программирование на С++ с использованием классов. Перегрузка операторов» |
|
.................................................................................................................................................. |
45 |
Лабораторная работа №16. |
|
Тема «Программирование на С++ с использованием классов. Массивы объектов . |
|
Наследование» ....................................................................................................................... |
55 |
Список литературы ................................................................................................................. |
61 |
Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Лабораторные работы «Программирование на С++» |
5 |
Лабораторная работа №1.
Тема: «Программирование линейных вычислительных процессов»
Цель работы : Изучить структуру программы на языке С++ [1, с. 10-33, с. 47-48]. Ознакомиться с операторами ввода и вывода [1, с. 49-52]. Ознакомиться с программированием математических формул [1, с. 47].
Задание: Написать две программы на языке С++ для расчета значений переменных y и z по заданным формулам (табл. 1.1). В первой программе использовать для ввода функцию scanf, для вывода – функцию printf. Во второй программе использовать операторы потокового ввода-вывода cin и cout. Определить разность между значениями y и z. В программе предусмотреть ввод исходных данных с экрана дисплея. Предварительно вычислите ожидаемые значения y и z с помощью калькулятора. Убедитесь, что значения, вычисленные с помощью калькулятора, совпадают с результатами, которые получаются в результате работы программы.
Таблица 1.1. Варианты заданий к лабораторной работе №1
Вариант 1 |
Вариант 2 |
|||||||||||||||||||||||||
sin 2π 3α |
y=cos α sin α cos3α sin3α |
|||||||||||||||||||||||||
5 |
3 |
z=2 |
cosα sin |
π |
2α |
|||||||||||||||||||||
2 |
||||||||||||||||||||||||||
y=1 −sin 3α−π ; z |
=ctg 4 |
π 2 |
α |
4 |
||||||||||||||||||||||
Вариант 3 |
Вариант 4 |
|||||||||||||||||||||||||
y=sin 2α sin 5α−sin 3α |
y=sin 2α sin 5α−sin 3α |
|||||||||||||||||||||||||
cos α 1 −2 sin2 2α |
cos α−cos3α cos5α |
|||||||||||||||||||||||||
z=2sinα |
z=tg 3α |
|||||||||||||||||||||||||
Вариант 5 |
Вариант 6 |
|||||||||||||||||||||||||
y=1 −1 sin2 2α cos2α |
y=cos α cos2α cos6α cos 7α |
|||||||||||||||||||||||||
4 |
α |
5 |
||||||||||||||||||||||||
z=cos2 α cos4 α |
z=4cos 2 |
cos 2 α cos 4α |
||||||||||||||||||||||||
Вариант 7 |
Вариант 8 |
|||||||||||||||||||||||||
2 |
3 |
α |
2 |
11 |
α |
y=2 sin2 3π−2α cos2 5π 2α |
||||||||||||||||||||
y=cos |
8 |
π−4 |
−cos |
8 π 4 |
1 |
1 |
5 |
|||||||||||||||||||
z=4 |
−4 sin 2 π−8α |
|||||||||||||||||||||||||
z= |
2 |
sin α |
||||||||||||||||||||||||
2 |
2 |
|||||||||||||||||||||||||
Вариант 9 |
Вариант 10 |
1 |
||||||||||||||||||||||||
y= cos α−cos β 2− sin α−sin β 2 |
4 |
2 |
2 |
|||||||||||||||||||||||
z=−4 sin |
2 α− β |
cos α β |
y=cos |
a sin |
b 4 sin |
2a−1 |
||||||||||||||||||||
2 |
z=sin b a sin b−a |
|||||||||||||||||||||||||
Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Лабораторные работы «Программирование на С++» |
6 |
||||||||||||||||||||||||||||||||
Продолжение табл.1.1 |
|||||||||||||||||||||||||||||||||
Вариант 11 |
Вариант 12 |
||||||||||||||||||||||||||||||||
1 −2sin2 α |
y= |
sin 4α |
cos2α |
||||||||||||||||||||||||||||||
y=1 sin3α |
|||||||||||||||||||||||||||||||||
1 cos 4α |
1 cos 2α |
||||||||||||||||||||||||||||||||
1 −tg α |
3 |
||||||||||||||||||||||||||||||||
z=1 tg α |
z=ctg 2 π−α |
||||||||||||||||||||||||||||||||
Вариант 13 |
Вариант 14 |
||||||||||||||||||||||||||||||||
y=sin α cos 2β−α |
y=1 |
sin α β−γ −sin β γ−α |
|||||||||||||||||||||||||||||||
cos α−sin 2β−α |
4 |
||||||||||||||||||||||||||||||||
1 sin 2β |
sin γ α− β −sin α β γ |
||||||||||||||||||||||||||||||||
z=cos2β |
z=sin α cos β cosγ |
||||||||||||||||||||||||||||||||
Вариант 15 |
Вариант 16 |
||||||||||||||||||||||||||||||||
x2 2x−3 x 1 |
x2−9 |
||||||||||||||||||||||||||||||||
2 |
|||||||||||||||||||||||||||||||||
y= |
2b 2 b −4 |
y= |
2 |
||||||||||||||||||||||||||||||
2 |
x |
2 |
|||||||||||||||||||||||||||||||
b −4 b 2 |
2x−3 x−1 x |
−9 |
|||||||||||||||||||||||||||||||
1 |
z= |
x 3 |
|||||||||||||||||||||||||||||||
z= |
|||||||||||||||||||||||||||||||||
b 2 |
x−3 |
||||||||||||||||||||||||||||||||
Вариант 17 |
Вариант 18 |
||||||||||||||||||||||||||||||||
1 |
3 tg α−tg3 α |
||||||||||||||||||||||||||||||||
y=4 [ cos α β−γ cos β γ−α |
y=1 −3 tg2 α |
||||||||||||||||||||||||||||||||
cos γ α−β cos α β γ ] |
z=tg 3α |
||||||||||||||||||||||||||||||||
z=cos α cos β cosγ |
|||||||||||||||||||||||||||||||||
Вариант 19 |
Вариант 20 |
−1 |
|||||||||||||||||||||||||||||||
1 −cos α |
1 a a2 |
1 −a a2 |
2 |
||||||||||||||||||||||||||||||
y= 1 cosα |
y= 2a a2 |
2 −2a−a2 |
5 −2a |
||||||||||||||||||||||||||||||
z= |
1 −cosα |
z=4 −a |
|||||||||||||||||||||||||||||||
sin α |
|||||||||||||||||||||||||||||||||
2 |
|||||||||||||||||||||||||||||||||
Вариант 21 |
Вариант 22 |
||||||||||||||||||||||||||||||||
1 |
4 tg α−4 tg3 α |
||||||||||||||||||||||||||||||||
y=8 cos4α 4 cos2α 3 |
y= |
||||||||||||||||||||||||||||||||
1 −6 tg2 α tg4 α |
|||||||||||||||||||||||||||||||||
z=cos4 α |
z=tg 4α |
||||||||||||||||||||||||||||||||
Вариант 23 |
Вариант 24 |
||||||||||||||||||||||||||||||||
y=1 cos4α−4 cos2α 3 |
y=cos α sin α |
||||||||||||||||||||||||||||||||
8 |
cos α−sin α |
||||||||||||||||||||||||||||||||
z=sin4 α |
z=tg 2α sec2α |
||||||||||||||||||||||||||||||||
Вариант 25 |
Вариант 26 |
||||||||||||||||||||||||||||||||
y=1 [ sin α β−γ sin β γ−α |
y=1 |
3 sin α−sin3α |
|||||||||||||||||||||||||||||||
4 |
4 |
||||||||||||||||||||||||||||||||
sin γ α− β −sin α β γ ] |
z=sin3 α |
||||||||||||||||||||||||||||||||
z=sin α sin β sin γ |
|||||||||||||||||||||||||||||||||
Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Лабораторные работы «Программирование на С++» |
7 |
Лабораторная работа №2.
Тема «Программирование разветвляющихся вычислительных процессов»
Цель работы : Изучение условного оператора в языке С++[1, с. 59-73]. Задание: Составить алгоритм и написать программу на языке С++ решения
задачи согласно своего варианта.
Варианты заданий
1.Задана точка M с координатами (x,y). Определить месторасположение этой точки в декартовой системе координат (является ли эта точка началом координат, лежит на одной из координатных осей или расположена в одном из координатных углов).
2.Задана квадратичная функция вида y=ax2+bx+c. Вывести сообщения, как направлены ветви параболы, сколько у нее точек пересечения с осью ОХ.
3.Задан параллелограмм со сторонами a, b и углом α между ними. Определить тип параллелограмма (ромб, прямоугольник или квадрат), если это возможно.
4.Известны углы α и β у основания трапеции. Выяснить, если это возможно, тип трапеции (прямоугольная, равнобедренная, прямоугольник).
5.Задан круг с центром в точке О(x0, y0) и радиусом R0 и точка А (x1, y1). Определить месторасположение точки по отношению к кругу (находится внутри круга, вне его или лежит на окружности).
6.Определите, пересекаются ли парабола у=cx2+dx+f и прямая y=ax+b. При положительном ответе найти точки пересечения.
7. Заданы три функции y1=x3, y2=x3+1, |
y3= |
1 |
. Определить, являются ли эти |
|
1 x |
2 |
|||
функции четными или нечетными. |
||||
8.Выяснить, пересекаются ли параболы у=аx2+bx+с и у=dx2+ex + ¦. При положительном ответе найти точки пересечения.
9.Выяснить, пересекаются ли кривые у=аx3+bx2+сx+d и y=ex3+fx2+gx+h. При положительном ответе найти точки пересечения.
10.Определите, пересекаются ли кривая у=аx3+bx2+сx+d и прямая y=fx+g. При положительном ответе найти точки пересечения.
11.Задана окружность с центром в точке О(x0,y0) и радиусом R0 и прямая y=ax+b. Определить, пересекаются ли прямая и окружность. При положительном ответе найти точки пересечения.
12.Заданы две окружности: с центром в точке О(x0, y0) и радиусом R0 и с центром в точке О(x1, y1) и радиусом R1. Определите, во скольких точках пересекаются окружности.
13.Заданы три точки на плоскости: M с координатами (x1,y1), L с координатами (x2,y2) и H с координатами (x3,y3). Определите, лежат ли они на одной прямой. При отрицательном ответе найти площадь и периметр треугольника MLH.
Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Лабораторные работы «Программирование на С++» |
8 |
14.Заданы три точки А(a1,a2,a3), В(b1,b2,b3) и С(c1,c2,c3). Определить, между какими точками расстояние будет наименьшим.
15.Задан треугольник с углами α, β и γ. Определить тип треугольника — остроугольный, прямоугольный или тупоугольный.
16.Заданы точки А(a1,a2) и В(b1,b2). Определить, лежат ли они на прямой y=ax+b.
17.Известны уравнения двух прямых y=a1x+b1 и y=a2x+b2. Определить, являются ли эти прямые параллельными или перпендикулярными, если нет, то найти угол между ними.
18.Задан треугольник со сторонами a, b и с. Определить, является ли этот треугольник равносторонним, равнобедренным, если нет, вычислить площадь треугольника.
19.Даны уравнения двух прямых y=a1x+b1 и y=a2x+b2. Определить, пересекаются ли эти прямые, совпадают или параллельны.
20.Даны 3 дроби |
a1 |
, |
a2 |
, |
a3 |
. Найти, какая из трех дробей наибольшая. |
|
b1 |
b2 |
b3 |
|||||
21.Определить, имеет ли решение система {dxax eyby==cf . Если решение есть, найти
значение x и y.
22.Определить, при каких значениях х и y векторы A=a1i+a2j+xk и B=yi+b2j+b3k коллинеарны и какой из векторов короче.
23.Проверить коллинеарность векторов A=(a1, a2, a3) и B=(b1, b2, b3). Установить, какой из них длиннее и во сколько раз.
24.Даны координаты вершин двух треугольников ABC и DFG: A(a1,a2), B(b1,b2), C(c1,c2), D(d1,d2), F(f1,f2), G(g1,g2). Определить, периметр какого треугольника больше.
25.Даны две прямые y=a1×x+c1 и y=a2×x+c2. Определить условие
перпендикулярности прямых, и если оно не выполнятся, найти угол между ними.
26.Задана показательная функция y=ax. Проверить, является ли функция возрастающей ( при a>1)или убывающей (при 0 £ a £ 1). Задана функция
обратной пропорциональности y= kx . Определить, в каких координатных углах расположены ветви гиперболы.