- •Программа:
- •I. Линейная алгебра
- •II. Линейное программирование
- •III. Дифференциальное и интегральное исчисление.
- •IV. Дифференциальные уравнения и численные методы их решения
- •V. Аналитическая геометрия
- •VI. Функции многих переменных и теория поля.
- •VII. Элементы теории множеств
- •VIII. Теория вероятностей и математическая статистика.
- •Распределение по видам нагрузки
- •Учебный план
- •Приложение 1 Домашние задания Домашнее задание № 1. Определители.
- •Домашнее задание №2 Матрицы и операции над ними
- •Домашнее задание №3. Системы линейных алгебраических уравнений.
- •Домашнее задание №4 Область определения. Частные производные. Производная по направлению. Градиент. Дифференциал.
- •Домашнее задание №5. Производные и экстремумы функций.
- •Домашнее задание №6. Теория множеств.
- •Домашнее задание №7. Математическая логика
- •Домашнее задание №8. Теория вероятности и математическая статистика.
- •Домашнее задание №9. Сетевое планирование и управление.
- •Домашнее задание №9. Линейное программирование
- •Приложение 2
- •Семестр I Лабораторная работа №1. Макрокоманды программы Microsoft Excel 2003.
- •1. Макрокоманда: «Включение компьютера и вход в систему».
- •2. Макрокоманда: «Запуск программы Microsoft Excel».
- •3. Макрокоманда: «Выбор активного листа».
- •4. Макрокоманда: «Занесение целых чисел в ячейку».
- •5. Макрокоманда: «Занесение целых чисел в диапазон ячеек».
- •6. Макрокоманда: «Занесение десятичных дробей в ячейку».
- •7. Макрокоманда: «Занесение десятичных дробей в диапазон ячеек».
- •8. Макрокоманда: «Занесение заголовка в ячейку».
- •9. Макрокоманда: «Активизация диапазона ячеек».
- •10. Макрокоманда «Сортировка данных».
- •11. Макрокоманда: «Активизация несвязанного диапазона ячеек».
- •12. Макрокоманда: «Форматирование ширины столбца».
- •13. Макрокоманда: «Форматирование высоты строки».
- •14. Макрокоманда: «Специальная вставка – транспонирование».
- •15. Макрокоманда: «Выбор языка клавиатуры».
- •16. Макрокоманда: «Объединение ячеек».
- •17. Макрокоманда: «Добавление нового листа в рабочую книгу Excel».
- •18. Макрокоманда «Вставка символа».
- •19. Макрокоманда: «Заполнение арифметической прогрессии».
- •20. Макрокоманда: «Закрытие программы Microsoft Excel».
- •21. Макрокоманда «Создание индекса».
- •22. Макрокоманда «Выделение границ ячейки».
- •23. Макрокоманда «Центрирование данных в ячейке».
- •24. Макрокоманда: «Копирование в буфер обмена».
- •25. Макрокоманда: «Построение диаграммы».
- •26. Макрокоманда: «Занесение формул в ячейку».
- •27. Макрокоманда: «Автозаполнение - нумерация».
- •28. Макрокоманда: «Автозаполнение - формула».
- •Лабораторная работа №2. Определители 3-го порядка и их вычисление.
- •Лабораторная работа №3. Вычисление определителей 4-го порядка разложением по элементам любой строки.
- •Лабораторная работа №4. Вычисление определителей 4-го порядка разложением по элементам любого столбца.
- •Лабораторная работа №5 . Словесные алгоритмы линейной алгебры и их реализация в программе Excel.
- •Посчитайте определители следующих матриц:
- •Лабораторная работа №6. Вычисление ранга матрицы.
- •Задания для самостоятельной работы. Н айдите ранги следующих матриц: Лабораторная работа №7. Умножение матриц.
- •Это полезно знать!
- •Задания для самостоятельной работы.
- •Лабораторная работа №8. Вычисление обратной матрицы.
- •Задания для самостоятельной работы.
- •Лабораторная работа №9. Решение систем линейных уравнений по формуле Крамера.
- •Задания для самостоятельной работы.
- •Лабораторная работа № 10. Решение систем линейных уравнений в матричном виде.
- •Задания для самостоятельной работы.
- •Лабораторная работа № 11. Решение систем линейных уравнений с четырьмя неизвестными методом Гаусса.
- •Задания для самостоятельной работы.
- •Лабораторная работа № 12. Нахождение собственных значений линейного оператора.
- •Задания для самостоятельной работы.
- •Лабораторная работа № 13. Логические задачи в алгебре Буля.
- •Задания для самостоятельной работы.
- •Лабораторная работа № 14. Логические задачи в алгебре Жегалкина.
- •Если записать уравнение в виде
- •Уточнение корня методом проб.
- •Получим таблицу (рис. 15.3)
- •Уточнение корня методом половинного деления.
- •Задания для самостоятельной работы.
- •Лабораторная работа № 16. Задачи линейного программирования.
- •Задания для самостоятельной работы.
- •Семестр II Лабораторная работа № 2. Изучение числовых последовательностей
- •Задания
- •Лабораторная работа № 6. Численное дифференцирование степенной функции
- •Лабораторная работа №10. Приближенное вычисление определенных интегралов. Формула Симпсона.
- •Лабораторная работа№16. Закон устойчивости частот
- •Лабораторная работа №17. Анализ экономико-исторических явлений статистическими моделями
- •Задание
- •Список литературы
- •Дополнительная литература
Лабораторная работа №5 . Словесные алгоритмы линейной алгебры и их реализация в программе Excel.
В большинстве математических задач ответ даётся в виде формулы. Формула определяет последовательность математических операций, которую нужно выполнить для вычисления искомой величины.
Однако известны задачи, для которых ответ легко может быть найден, хотя он и не записывается в виде формулы. Например, можно ли назвать формулой правило вычисления суммы нескольких чисел с помощью поразрядного сложения столбиком? В то же самое время это правило полностью решает поставленную задачу: оно определяет последовательность математических операций, которую нужно выполнить для вычисления искомой величины.
Итак, для решения математической задачи важно указать систему правил, которая задаёт строго определённую последовательность математических операций, приводящих к искомому ответу. Такую систему правил называют алгоритмом. Формульные алгоритмы легко программируются традиционными языками программирования и их ещё называют вычислительными алгоритмами.
В качестве примера не формульного алгоритма можно указать на метод отыскания наибольшего общего делителя двух целых чисел. Этот метод состоит в поэтапном представлении большего числа в виде суммы из двух слагаемых. Одно слагаемое представляет произведение числа на частное от деления большего числа на меньшее, а другое – остаток указанного деления. Процесс поэтапного представления заканчивается, когда остаток становиться равным нулю. Этот метод называют алгоритмом Евклида.
Отличие такого алгоритма от формульного состоит в том, что он требует дополнительных логических операций, чтобы вычислительный процесс для любых двух чисел вести по данной системе правил. Например, в данном случае необходимо определить – какое из данных двух чисел представляется большим.
Если указанных дополнительных операций много в данной системе правил, то программирование таких алгоритмов традиционными языками программирования затруднено из-за ограниченности логических операций в языке программирования.
Чтобы различать такие алгоритмы от формульных, назовем их словесными алгоритмами.
Словесные алгоритмы могут представляться и некоторыми приемами упрощения формульных алгоритмов с целью сокращения числа арифметических операций.
Действительно, рассмотрим алгоритмы вычисления определителей в линейной алгебре. Пусть дана квадратная матрица А n-го порядка: ||A|| = aij (i=1,2,3..n; j=1,2,3..n). Тогда по определению, определителем матрицы А п-го порядка называется сумма всех п! произведений элементов этой матрицы, взятых по одному из каждой строки и по одному из каждого столбца; при этом каждое произведение снабжено знаком плюс или минус по некоторому правилу.
В соответствии с данным определением величину определителя следует вычислять по формуле
где суммирование ведётся по всем п! перестановкам (,, ...) из чисел 1, 2, ...п. Знак перед каждым произведением в (1) определяется по общеизвестному правилу, которое не влияет на количество выполняемых арифметических операций.
Вычисление определителя п-го порядка по формуле (1) представляет весьма трудоёмкий процесс, так как число слагаемых, из которых составляется определитель, очень быстро растёт с увеличением п. Например, если п=20, то требуется выполнить 1920!4,51019 умножений. На машине, которая делает миллион умножений в секунду, такой расчёт продолжался бы 1,4106 лет.
Поэтому существует вычислимый алгоритм, основанный, например, на формуле разложения определителя по элементам любой строки. Эта формула для определителя п-го порядка имеет вид:
= аi1 Ai1 + ai2 Ai2 + … + ain Ain (2).
Учитывая связь между алгебраическими дополнениями и минорами:
Aij = (-1)i+j Mij ,
можно записать:
= аi1 (-1)i+1 Mi1 + ai2 (-1)i+2 Mi2 + … + ain(-1)i+п Miп (3).
С помощью этой формулы вычисление определителя п-го порядка сводится к вычислению ряда определителей (п - 1)-го порядка - миноров Mi1, … Miп.Каждый из этих определителей, в свою очередь, можно свести к определителям (п - 2)-го порядка, эти последние - к определителям порядка п - 3 и т.д. В конечном счёте, вычисление может быть сведено к вычислению определителей только 2-го порядка.
В вычислительный процесс, определяемый формулами (2)-(3), входит и словесный алгоритм вычисления определителя п-го порядка и миноров как определителей (п-1)-го порядка. Этот словесный алгоритм диктуется следующим определением: минор Мij элемента аij матрицы А п-го порядка есть определитель матрицы (п-1)-го порядка, полученной вычёркиванием в матрице А i-ой строки и j-го столбца и сдвигом оставшихся элементов без нарушения их порядка.
Для уменьшения числа арифметических операций в формуле (3) можно с помощью элементарных преобразований над строками или столбцами исходного определителя преобразовать его к такому виду, в котором в i-ой строке будет как можно больше нулевых элементов. В частности, когда в i-ой строке только элемент аij 0, то формула (3) упрощается так:
= аij (-1)i+j Mij (4).
Элементарные преобразования над строками или столбцами определителя представляются словесными алгоритмами, основанными на следующих свойствах определителей.
Свойство 1. Если поменять местами две строки или столбца, определитель изменит знак.
Свойство 2. Определитель матрицы п-го порядка не изменится, если к элементам одной его строки прибавить соответствующие элементы другой строки, умноженные на одно и то же произвольное число. То же самое справедливо и для столбцов.
К сожалению, словесные алгоритмы не инвариантны. Они зависят от конкретного вида определителя и в пределах одного определителя, как правило, неоднозначны, т.е. различными преобразованиями можно получить одну и ту же форму определителя.
Именно поэтому реализацию словесных алгоритмов удобно осуществлять в программе Excel.
Ранее было введено понятие входной язык программы и приведены примеры программ на указанном языке. Оказалось, что процесс программирования на входном языке сводится к построению различных технологий пользования главным меню программы применительно к поставленной задаче.
Проиллюстрируем процесс программирования в Excel словесных алгоритмов линейной алгебры, необходимых для вычисления по формулам (3)-(4) следующего определителя:
Чтобы вычислить данный определитель по формуле (4), необходимо с помощью элементарных преобразований преобразовать его к такому виду, в котором в любой из строк содержался только один элемент не равный нулю. Для этого произведём анализ строк определителя . Интерес вызывает 2-я строка, в которой 1-й элементы равен 1, следовательно, в этой строке можно получить ряд нулевых элементов с помощью следующих преобразований над столбцами:
-
к элементам 2-го столбца прибавим элементы 1-го, умноженные на (-3);
-
к элементам 3-го столбца прибавим элементы 1-го, умноженные на (-2);
-
к элементам 4-го столбца прибавим элементы 1-го, умноженные на (-1).
В результате в соответствии с формулой (4) будем иметь
= (-1) 1 (5),
г де
В качестве вычислительного средства воспользуемся инструментами программы Excel– 97.
-
Включите компьютер.
-
Подождите пока загрузится операционная система Windows, после чего откройте окно Microsoft Excel.
-
Заполните ячейки таблицы значениями определителя (рис. 5.1).
После появления на экране компьютера матрицы А осуществляется указанный выше анализ строк. Для выполнения выбранного словесного алгоритма производим следующие действия.
-
Активизируйте ячейку F1 и занесите в неё с клавиатуры формулу =В1+А1*(-3). Результат занесите автозаполнением в ячейки F2F4.
-
В ячейке G1 разместите результат прибавления к 3-му столбцу 1-го, умноженного на (-2). Результат, полученный в ячейке, автозаполнением занесите в ячейки G2G4.
-
В ячейке Н1 запишем формулу =D1+А1*(-1), после чего автозаполнением заполните ячейки Н2Н4 (см. рис. 5.2).
Рис.35
Рис. 5 .1 Рис. 5.2
Из рис.36 видно, что в результате проделанных вычислений столбцы определителя 1 оказались в ячейках F1, F3, F4; G1, G3, G4; H1, Н3, H4.
Теперь в соответствии с формулой (3) определитель 1 разложим по элементам 1-ой строки. Тогда будем иметь:
1= (-1) 2 + (-1) 3 (6).
При этом определители 2 и 3 имеют вид:
а их элементы оказались в ячейках: G3, G4, Н3, H4 (для 2); F3, F4, G3, G4 (для 3).
Для вычисления определителей 2-го порядка 2 и 3 в строку формул рабочего листа Excel необходимо последовательно ввести следующие формулы в ячейки Н5 и I5:
После последовательного вычисления по этим формулам получим: 2= 20 (ячейка Н5); 3= -17 (ячейка I5).
Возвращаемся снова к строке формул и заносим там выражение для вычисления формулы (6):
Вычисление по (6) дает 1= 3 (ячейка J5 рабочего листа Excel).
Наконец вычисляем по формуле (5) искомый определитель :
в результате будем иметь =-3.
Таким образом, указан вычислимый алгоритм, который применим к любому определителю любого порядка. Если исходный определитель высокого порядка, то процесс его вычисления не обязательно доводить до вычисления определителей 2-го порядка. Можно остановиться на определителе более низкого порядка по сравнению с исходным, который в дальнейшем вычислить с использованием меню МАСТЕР ФУНКЦИЙ.
Предложенный вычислимый алгоритм представляет комбинацию словесных и формульных алгоритмов. Он легко программируется на входном языке Excel и программа на этом языке отлаживается одновременно с вычислениями благодаря взаимодействию пользователя с компьютером.
Задания для самостоятельной работы.