- •1 Семестр
- •18 Занятий
- •1. Линейные и разветвляющиеся алгоритмы
- •Вычисления по формулам. Стандартные математические функции
- •Побитовые операции
- •Область на плоскости
- •Условный оператор
- •Логическое выражение в условном операторе
- •Ветвления
- •2. Циклы
- •Целочисленная арифметика. Приведение типов
- •Вложенные циклы. Схема Горнера
- •2.3. Перебор значений
- •2.4. Итерационные циклы. Вычисления с точностью
- •2.5. Нахождение простых чисел
- •2.6. Вычисления без хранения последовательности значений
- •Массивы. Указатели
- •Обработка одномерных массивов
- •Построение новой матрицы по части заданной матрицы
- •Обход матрицы
- •Упорядоченность значений в матрицах
- •Алгоритм Эратосфена для нахождения простых чисел
- •Преобразование матриц
- •*** Использование массивов для представления «длинных» чисел
- •*** Экономичное хранение матриц. Матричная алгебра
- •Строки. Структуры
- •Использование строкового типа
- •Перевод из одной cистемы счисления в другую
- •Выделение слов в строке
- •Массив слов
- •Создание собственных процедур для обработки строк
- •Функции
- •5.1. Передача параметров по значению и по ссылке
- •5.2. Перегрузка и шаблон функций
- •5.3. Возврат ссылок
- •5.4. Рекурсия
- •5.5. *** Перебор с возвратом
- •2 Семестр (15 занятий)
- •5.6. Вычисление корня уравнения. Передача имени функции в качестве параметра. Аргументы по умолчанию
- •5.7. Вычисление интеграла. Передача имени функции в качестве параметра
- •5.8. Сортировка массивов
- •5.9. *** Сортировка массивов
- •6. Файлы
- •6.1. Использование структур для битового представления чисел
- •6.2. Файлы чисел
- •6.3. Файлы записей
- •7. Динамические структуры данных
- •7.1. Динамическое выделение памяти для массивов
- •7.2. Линейный список
- •7.3. Линейные списки
- •7.4. Двухсвязные списки
- •7.5. Деревья
- •7.6. *** Более сложные связанные динамические структуры данных
- •7.7. *** Графы
- •8.1. Класс «Многоразрядное число»
- •8.2 Класс «Массив»
- •8.3 Класс «Линейный список»
- •8.4. *** Класс «Двусвязный список»
- •8.5 *** Класс «Бинарное дерево»
- •8.6 *** Класс «Граф»
- •Наследование. Полиморфизм
- •9.1. Наследование
- •9.2. Полиморфизм. Виртуальные методы
- •9.3. *** Полиморфизм. Виртуальные методы
5.6. Вычисление корня уравнения. Передача имени функции в качестве параметра. Аргументы по умолчанию
Вычислить корень
уравнения
на отрезке [a;
b]
с точностью
=10–6,
используя заданный метод (М = 1 – метод
половинного деления, М = 2 – метод
касательных, М = 3 – метод хорд) для
заданных функций. Вычисление корня
уравнения оформить в виде функции с
функциональным параметром, параметры
a,
b,
,
s
– в виде аргументов по умолчанию.
Результат представить в виде таблицы (s – значение параметра, х – вычисленный корень уравнения, f(x) – значение функции в найденной точке х, k_iter – количество итераций цикла для получения корня с заданной точностью):
|
S |
X |
F(x) |
k_iter |
|
S |
... |
... |
... |
|
S+s |
... |
... |
... |
|
... |
... |
... |
... |
-
a) f(x) = x2 - 3; a = 1; b = 3;
б).
;
a
= 0; b
= 1,5; s[0,1;
1,3]; s
= 0,3.
M=1.
-
2. a) f(x) = x3 - 3; a = 1; b = 4;
б)
;
a
=
0; b
= 4,5; s:
s[0,5;
2], s
= 0,5.
M=1.
-
3. а) f(x) = (x-1)2 - 3 ; a = 1; b = 4;
б)
;
a
= 0; b
= 2; s:
s[0,3;
0,7]; s
= 0,1.
M=1.
-
4. а) f(x) = (x-1)2 - 3 ; a = -2; b = 1;
б)
;
a
=
0; b
= 1;.
s[1,95;
2], s
= 0,01. M=1.
-
5. а). f(x) = (x-1)2 - 5 ; a = -3; b = 0;
б)
;
a
= 0,5; b
= 0,8;.
s[0,7;
1,6], s
= 0,3; M=2.
-
6. а) f(x) = (x-1)3 - 8 ; a = 1; b = 4;
б)
;
a
= 0; b
= 1,5;.
s[0,95;
1,2], s
= 0,05; M=2.
-
7. а) f(x) = (x+3)3 - 8 ; a = -2; b = 1;
б)
;
a
= 0; b
= 2;.
s[2,8;
3,2], s
= 0,1; M=2.
-
8. а )f(x) = (x-1)3 -1 ; a = 0; b = 3;
б)
;
a
= –1; b
= 0,7;.
s[1;
3], s
= 1; M=1.
-
9. а) f(x) = (x-1)2 -5 ; a = 2; b =4;
б)
a
=
–1,5; b
= 2;.
s[0,7;
1,6], s
= 0,3; M=3.
-
10. а) f(x) = (x+1)2 -5 ; a = 0; b =2;
б)
;
a
=
–1,5; b
= 1;.
s[0,9;
1,1], s
= 0,05; M=3.
-
11. а) f(x) = (x+1)2 -4 ; a = 0; b =3;
б)
;
a = 0; b = 2;. s[0,9; 1,2], s = 0,02; M=3.
-
12. а) f(x) = (x+1)2 -9 ; a =1; b =4;
б)
;
a
= 0; b
= 1;. s[0,96;
1,02], s
= 0,02; M=3.
5.7. Вычисление интеграла. Передача имени функции в качестве параметра
Вычислить следующие интегралы заданным методом (M = 1 – метод левых прямоугольников, М = 2 – метод правых прямоугольников, М = 3 – метод средних прямоугольников, М = 4 – метод трапеции, М = 5 – метод Симпсона.), воспользовавшись критерием двойного пересчета, с точностью = 10–6 .
Значения параметра s: si[s1; s2], si = s1 + is, i = 0, 1, … .
Значения параметра t: ti[t1; t2], ti = t1 + it, i = 0, 1, … .
Вычисление значения функции в точке оформить в виде функции, вычисление интеграла – в виде функции с параметром функционального типа для задания функции. Процедуры оформить в виде отдельного файла.
Результаты представить в виде таблицы (s, t – соответствующие значения параметров, Int – вычисленное значение интеграла, k_iter – количество пересчетов значений интеграла для получения заданной точности):
|
s |
t |
Int |
k_iter |
|
s1 |
t1 |
... |
... |
|
s1 |
t1+t |
... |
... |
|
... |
... |
... |
... |
|
s1+s |
t1 |
... |
... |
|
... |
... |
... |
... |
1.
;
2.
;
-
3.
;
4.
;
-
;
6.
;
7.
;
8.
;
9.
;
10.
;
11.
;
12.
.
Таблица значений параметров
|
№ задания |
s1 |
s2 |
s |
t1 |
t2 |
t |
a |
b |
M |
|
1 |
0 |
0,5 |
0,1 |
0,6 |
1,8 |
0,4 |
0,1 |
1,2 |
1 |
|
2 |
1,5 |
2,5 |
0,5 |
0 |
4 |
1 |
0,81 |
1,762 |
1 |
|
3 |
0 |
2 |
0,5 |
2 |
5 |
1 |
–1 |
1 |
1 |
|
4 |
0 |
5 |
1 |
2 |
3 |
0,2 |
0,1 |
0,7 |
2 |
|
5 |
1 |
10 |
3 |
1 |
3 |
1 |
2,63 |
3,1 |
2 |
|
6 |
0 |
0,5 |
0,1 |
0,5 |
2,5 |
0,5 |
1 |
2 |
3 |
|
7 |
1 |
4 |
0,5 |
0,4 |
1,2 |
0,2 |
0,4 |
1,2 |
3 |
|
8 |
0 |
0,5 |
0,1 |
1 |
3 |
0,5 |
1,3 |
2,621 |
4 |
|
9 |
1 |
4 |
1 |
0,2 |
1,2 |
0,2 |
0 |
1,075 |
4 |
|
10* |
0 |
1 |
0,2 |
1 |
4 |
1 |
s |
1,234 |
5 |
|
11* |
1 |
5 |
1 |
0,5 |
2,5 |
0,5 |
3 |
4,254 |
5 |
|
12* |
0,5 |
2 |
0,5 |
0,5 |
4 |
0,5 |
0 |
1,047 |
5 |
