- •2. Абстрактное программирование. Функционалы и их применение в вычислительной математике Цель работы
- •Содержание работы
- •Введение в абстрактное программирование
- •Основные типы функционалов и их применения Применяющие функционалы
- •Отображающие функционалы
- •Порядок выполнения работы Основные приемы программирования функционалов
- •Индивидуальные задания
- •Время проведения работы
- •Содержание отчета
Индивидуальные задания
Каждый студент выполняет три индивидуальных задания.
За основу берется последняя цифра порядкового номера по ведомости N. По ней определяются варианты выполняемых заданий:
(N mod 10), 10+(N mod 10) и 20+N.
При выполнении заданий обязательно использование функций высших порядков без прямого применения рекурсии и методов процедурного программирования.
Удалить все последние элементы подсписков.
Удалить все n-е элементы подсписков.
Вставить obj после n-ых элементов каждого подсписка.
Проверить, является ли obj n-ым элементом каждого подсписка.
Удалить все элементы большие по модулю числа S.
Проверить, все ли подсписки имеют длину больше m.
Дан список произвольной вложенности. Найти сумму всех его элементов-чисел.
Проверить, есть ли хоть один подсписок, все элементы которого отрицательные.
Проверить, у всех ли его подсписков есть хотя бы один отрицательный элемент.
Проверить, является ли матрица магическим квадратом (Суммы по всем столбцам, строкам и главным диагоналям равны)
11. Сложить матрицы A и B размера M x N.
Cij=Aij+ Bij.
12. Умножить матрицу A размера M x N на вектор B длины N.
13. Умножить матрицу A размера M x N на матрицу B размера N x K.
14. Вычислить определитель матрицы A размера N x N:
,
где
- это (N-1) x
(N-1) – матрица,
получаемая из
вычеркиванием
первой строки и j- го
столбца.
Пример.
15. Вычислить обратную матрицу по аналитической формуле (метод Крамера):
,
где i - номер строки, j - номер столбца.
Пример.
Находим все миноры А и вычисляем элементы A-1.
=
=
=
.
Проверяем AA-1=E, к примеру, для 1 – ой строки А и первого столбца А-1: AA-1[1][1]=(5, –1, 2)*(17, –5, -3)/84=(85 +5 -6)/84=84/84=1.
16. Вычислить обратную матрицу методом Жордана-Гаусса, в котором вычисляются элементы расширенной матрицы (E|A-1) через последовательность эквивалентных преобразований матрицы (А|Е).
При этом допускаются все элементарные преобразования расширенной матрицы:
умножение какого-либо уравнения системы на число, отличное от нуля;
прибавление к одному уравнению другого уравнения, умноженного на произвольное число;
перемена местами двух уравнений в системе.
Пример.
А= 1 2 A-1= -2 1
3 4 -> 3/2 –1/2
17. Решение системы линейных уравнений методом последовательного исключения элементов (методом Гаусса):
Пример.
Запишем систему в более удобном, по сравнению с матричным представлением, видом.
Прямой ход.
Выберем первое уравнение в качестве разрешающего (с помощью которого преобразуют остальные). Разделим разрешающее уравнение на коэффициент при x1 (разрешающий элемент) и вычтем преобразованное уравнение из остальных. В результате получим систему, в которой неизвестное x1 исключено из второго и третьего уравнений:
Теперь второе уравнение будет разрешающим с элементов 21/5:
Отнимем от третьего уравнения второе, умноженное на 6/5:
В результате получим:
Обратный ход.
Умножим третье уравнение на (-1/3) и вычтем его из второго, затем умножим это же уравнение на 2/5 и вычтем его из первого. Далее умножим первое уравнение на (-1/5) и, используя это уравнение, исключим неизвестное x2 из первого уравнения. Окончательно имеем:
.
18. Вычисление корреляционной и ковариационной матриц.
Данные m наблюдений по n факторам приведены в виде матрицы X.
Формула для вычисления ковариации:
,
где
- среднее значение наблюдений по i-ому
фактору.
Дисперсия - частный случай ковариации:
Формула для вычисления парных коэффициентов линейной корреляции:
.
Для вычислений часто более удобной является следующая эквивалентная запись:
Графовое представление корреляционных связей [Львовский, Новик].
Построить граф
Х2
-0.8 / \-0.7
х1 х3
19.
Нахождение оценок коэффициентов
математической
модели по методу наименьших квадратов
(МНК):
,
где X – матрица экспериментальных данных, Y – значения отклика.
Пример.
,
.
Транспонируем А.
Найдем информационную матрицу Фишера.
Найдем ковариационно-дисперсионную матрицу (матрицу ошибок).
Найдем
решение системы.
А можно проще – сначала ХТY – получится вектор, а его умножить на обратную матрицу.
20. Построение матрицы плана полного факторного эксперимента (ПФЭ).
Имеется n – факторов, k - количество уровней изменения их значений.
Неообходимо провести эксперимент, в результате которого все независимые факторы варьируются на всех выбранных уровнях.
Количество опытов при ПФЭ подсчитывается как N=kn.
Пример. n = 2 k =2:
-1 -1
-1 1
1 -1
1 1
Пример. n = 3 k =2:
-1 -1 -1
-1 1 -1
1 -1 -1
1 1 -1
-1 -1 1
-1 1 1
1 -1 1
1 1 1
25. Дана целочисленная квадратная матрица n*n. Найти сумму наибольших значений элементов ее строк.
26. В целочисленной прямоугольной матрице размера n*m найти среднее арифметическое значение элементов столбцов, имеющих четные номера.
27. В целочисленной прямоугольной матрице размера n*m найти элемент, одновременно являющийся максимальным в своей строке и минимальным в своем столбце.
29. Дана целочисленная прямоугольная матрица размера m*n. Определить в каких строках элементы расположены в возрастающем порядке. Если таких строк нет, то выдать сообщение об этом.
30. Дана целочисленная прямоугольная матрица размера m*n. Определить в каких строках элементы расположены в убывающем порядке. Если таких строк нет, то выдать сообщение об этом.
31. Дана целочисленная прямоугольная матрица размера m*n. Определить в каких столбцах элементы расположены в возрастающем порядке. Если таких столбцов нет, то выдать сообщение об этом.
32. Дана целочисленная прямоугольная матрица размера m*n. Определить в каких столбцах элементы расположены в убывающем порядке. Если таких столбцов нет, то выдать сообщение об этом.
33. Дана целочисленная прямоугольная матрица размера m*n. Найти сумму элементов, у которых сумма индексов четна.
35. Дана квадратная матрица размера n*n. Определить, является ли матрица симметричной относительно главной диагонали.
36. Дана матрица m*n. Найти среднее геометрическое значение элементов на пересечении четных столбцов и четных строк.
37. Дана целочисленная прямоугольная матрица размера m*n. Определить равны ли какие либо две строки. Если нет таких строк, то вывести сообщение об этом.
39. Дана целочисленная прямоугольная матрица размера m*n. Вывести элемент, являющийся максимальным среди элементов находящихся на пересечении нечетных строк и нечетных столбцов.
40. Дана целочисленная прямоугольная матрица размера m*n. Вывести элемент, являющийся минимальным среди элементов, находящихся на пересечении нечетных строк и нечетных столбцов.
41. Дана целочисленная прямоугольная матрица размера m*n. Подсчитать сумму индексов столбцов, сумма элементов которых четна.
42. Дана целочисленная прямоугольная матрица размера m*n. Подсчитать сумму индексов строк, сумма элементов которых нечетна.
43. Дана целочисленная прямоугольная матрица размера m*n. Найти разницу между максимальным элементом матрицы и ее средним арифметическим значением.
44. Дана целочисленная прямоугольная матрица размера m*n. Найти элемент, который имеет наибольшее приближение к среднему арифметическому значению элементов матрицы.
45. Дана целочисленная квадратная матрица размера n*n. Найти разницу между кубами максимального и минимального элемента матрицы.
46. Дана целочисленная квадратная матрица размера n*n. Найти разницу между средним арифметическим значением и разницей между максимальным и минимальным элементами матрицы.
