Задание для курсовой работы по разделу «Разреженные матрицы и ортогональные списки» Требования, указания и рекомендации
Вид материала | Документы |
- Методические указания и рекомендации по выполнению курсовой работы для студентов специальности, 189.13kb.
- Методические указания для выполнения курсовой работы по дисциплине «Теория принятия, 547.84kb.
- Методические указания по выполнению курсовой работы содержание, 914.43kb.
- Методические указания к выполнению курсовой работы для студентов специальности, 275.42kb.
- Методические рекомендации по выполнению курсовой работы Настоящие «Методические указания», 103.94kb.
- О. А. Иванова Методические указания по выполнению курсовых работ для студентов всех, 314.38kb.
- Методические указания по выполнению курсовой работы Ижевск, 289.74kb.
- Методические указания к выполнению курсовой работы для студентов очной формы обучения, 261.79kb.
- Методические рекомендации для курсовой работы по «тау», 35.72kb.
- Методические указания к выполнению курсовых работ по дисциплине «финансы и кредит», 489.86kb.
Задание для курсовой работы
по разделу «Разреженные матрицы и ортогональные списки»
Требования, указания и рекомендации
- Требуется разработать программу, реализующую заданную (непустую) последовательность действий над разреженными матрицами (с вещественными или целочисленными элементами) и позволяющую продемонстрировать корректность программной реализации этих действий. Разреженные матрицы представляются и реализуются одним из двух рассмотренных на лекции способов (по указанию преподавателя).
- Основные операции с матрицами должны быть оформлены в виде модуля (в смысле языка Борланд Паскаль). Основная программа, по сути, является тестирующим драйвером, реализующим простой, удобный и функционально достаточный интерфейс и обеспечивающим процесс демонстрации преподавателю проверки корректности вычислительного ядра программы.
- В разработанной программе необходимо обеспечить ввод исходных данных и вывод результатов в удобной и соответствующей поставленным задачам форме. По согласованию с преподавателем дополнительно должна быть реализована наглядная демонстрация вычислительного процесса (вывод промежуточных данных).
- Во всех случаях необходимо продумать, предложить и после согласования с преподавателем реализовать состав и форму представления входных и выходных данных. В первую очередь это относится к внешнему представлению разреженных матриц. Рекомендуется для визуализации матриц в режиме диалога задавать и отображать часть матрицы (прямоугольный блок или подматрицу), определяемую соответствующими параметрами (в частных крайних случаях блоком может быть либо один элемент, либо вся матрица). Блок матрицы можно изображать как в виде профиля (нулевые элементы – пробелом, а ненулевые – специальным символом, например, *), так и стандартным цифровым способом.
- Последовательность действий над матрицами задается преподавателем из следующего далее списка заданий.
Список заданий
- Подсчитать следующие характеристики заданного блока матрицы:
- Сумму и произведение всех элементов.
- Максимальный и минимальный элементы.
- Последовательность элементов, полученную при обходе по строкам (по столбцам).
- Список локальных максимумов (минимумов). Локальным максимумом называется элемент, не имеющий соседей больших (меньших), чем он сам. Соседями элемента являются элементы, ближайшие по вертикали, горизонтали или диагонали (если таковые имеются).
- Минимум из максимальных элементов строк.
- Максимум из минимальных элементов столбцов.
- Список седловых точек. Седловой точкой называют элемент блока, такой, что он является наименьшим в своей строке и одновременно наибольшим в своем столбце, или, наоборот, наибольшим в своей строке и наименьшим в своем столбце.
- Сумму и произведение всех элементов.
- Для двух заданных матриц A и B, имеющих согласованные размеры, вычислить:
- Сумму A+B и разность AB.
- Произведение A*B.
- Матрицу С, такую, что Cij = Min k=1..K {Aik + Bkj}, где K – число элементов в строках матрицы A, равное числу элементов в столбцах матрицы B.
- Матрицу A*B – B*A (здесь A и B – квадратные матрицы).
- Для заданной матрицы вычислить новую матрицу того же размера:
- Переставив несколько заданных пар столбцов.
- Переставив несколько заданных пар строк.
- Переставив несколько заданных пар столбцов и пар строк.
- Элементы новой матрицы Cij = yтi xj , где yтi – i-ая строка, а xj – j-й столбец исходной матрицы, и запись yтi xj означает скалярное произведение вектора-строки yтi на вектор-столбец xj. Исходная матрица – квадратная.
- Вычислив матричное произведение заданного вектора-столбца на заданный вектор-строку исходной матрицы.
- Применив операцию сглаживания матрицы, при которой каждый элемент новой матрицы получается как среднее арифметическое имеющихся соседей соответствующего элемента исходной матрицы (включая сам этот элемент).
- Для заданной матрицы с неотрицательными элементами вычислить «укрупненную» новую матрицу меньшего размера, разбив исходную матрицу на прилегающие блоки заданного (согласованного) размера и заменив каждый такой блок на следующую величину:
- Сумму элементов блока.
- Максимум среди элементов блока.
- Количество ненулевых элементов в блоке.
- Среднее арифметическое ненулевых элементов блока.
- Количество элементов блока, величина которых принадлежит заданному диапазону.