Цель работы:Получение навыков обработки массивов на примере решения задач обработки векторов и матриц.
Задание:
1. Составить математическую модель решения задачи.
2. Описать входные выходные и промежуточные данные, ограничения на входные данные.
3. Составить алгоритм решения задачи.
4. Составить программу на языке С для решения задачи.
Содержание отчета
1. Постановка задачи.
2. Метод решения задачи (математическая модель).
3. Алгоритм.
4. Листинг программы на языке С.
5. Тестовые примеры.
Варианты заданий:
1. Рассматривая каждую строку прямоугольной матрицы как вектор, найти номера векторов-строк, для которых модуль их скалярного произведения Sikимеет максимальное значение :
.
2. Рассматривая каждый столбец прямоугольной матрицы как вектор, определить номер вектора-столбца, длина Ljкоторого максимальна:
.
3. Рассматривая элементы строки прямоугольной матрицы координатами точки в n-мерном пространстве, определить номера точек, расстояние d между которыми максимально :
.
4. В квадратной матрице найти значение и местоположение максимального элемента среди элементов, расположенных выше главной диагонали, и минимального элемента среди элементов, расположенных ниже главной диагонали.
5. Для каждого столбца прямоугольной матрицы вычислить среднее геометрическое P модулей его элементов и определить номера столбцов, для которых P имеет соответственно максимальное и минимальное значения (матрица не должна иметь нулевых элементов) :
6. В каждом столбце квадратной матрицы найти максимальный по модулю элемент и, если он не является диагональным, поменять его местами с диагональным элементом. Подсчитать количество таких перестановок.
7. К каждому элементу главной диагонали квадратной матрицы прибавить такое значение, чтобы сумма элементов в соответствующем столбце матрицы была нулевой. Сформировать вектор, i-я компонента которого равна разности между суммой элементов i-й строки до преобразования матрицы и суммой элементов этой же строки после преобразования (i=1,2,…,n).
8. Для каждого столбца прямоугольной матрицы подсчитать сумму входящих в него элементов и определить, имеются ли столбцы с одинаковой суммой. Подсчитать количество таких пар столбцов.
9. Рассматривая каждый столбец прямоугольной матрицы как вектор, определить, имеется ли в матрице ортогональные вектор - столбцы. Подсчитать количество пар таких векторов.
Примечание. Для ортогональных векторов их скалярное произведение равно нулю :
.
10. Каждая строка прямоугольной матрицы определяет координаты точки в n-мерном пространстве. Точки принадлежат ломаной линии, начинающейся с точки, содержащейся в первой строке, и заканчивающейся в точке, содержащейся в последней строке матрицы. Вычислить длину ломанной и определить номер ее отрезка, имеющего наибольшую длину.
Примечание. Длина отрезка между точками A(A(1), A(2), …,A(n)) и B(B(1), B(2), …,B(n)) определяется по формуле :
11. В квадратной матрице определить сумму положительных элементов, расположенных над главной диагональю, и сумму отрицательных элементов, расположенных под главной диагональю.
12. В прямоугольной матрице рассмотреть квадратные подматрицы размерностью 1, 2,…, n, причем для всех подматриц левым верхним элементом является элемент A(1,1) исходной матрицы, и определить номер подматрицы, среднее арифметическое элементов которой имеет наибольшее значение.
13. Задана верхняя треугольная матрица (A(i,j)=0 для всех i > j; i,j=1,2,…,n). В каждой строке матрицы, начиная со второй, заменить нулевые элементы такими равными друг другу значениями, чтобы сумма элементов данной строки стала равной нулю.
Указание. Так как в i - ой строке элементы A(i,1), …, A(i,i-1) нулевые, то при вычислении суммы рассматривать только элементы A(i,i), A(i,i+1), …, A(i,n).
14. Каждый элемент строки прямоугольной матрицы представить как приращение по отношению к минимальному элементу этой строки.
Указание. В i - ой строке (i = 1, 2, …, m) определить минимальный элемент A(i,min), после чего от элементов A(i,j) (j = 1, 2, …, n) вычесть его значение.
15. В квадратной матрице все элементы, расположенные ниже главной диагонали, равны нулю. В каждом столбце, кроме последнего, присвоить элементу, расположенному непосредственно ниже главной диагонали, такое значение, чтобы сумма элементов в столбце без учета элемента главной диагонали была равна нулю.
16. В каждой строке прямоугольной матрицы найти количество элементов A(i,j), превышающих по значению полусумму элементов A(i,j-1) и A(i,j+1), смежных с элементом A(i,j). Определить номер строки, имеющей максимальное значение таких элементов.
17. В каждой строке прямоугольной матрицы определить среднее арифметическое S ее элементов, после чего расположить в начале строки элементы A(i,j) < S, сохранив их исходную последовательность, а в конце строки – остальные элементы.
18. В каждой строке прямоугольной матрицы определить разность между средним арифметическим значением элементов, стоящих на четных местах, и средним арифметическим значением элементов, стоящих на нечетных местах. При этом учесть, что количество столбцов может быть как четное, так и нечетное.
19. Для каждой строки прямоугольной матрицы найти максимальное значение для сумм пар рядом стоящих элементов строки (A(i,1) + A(i,2), A(i,3) + A(i,4) + …), а также номер первого элемента пары, определяющей такую сумму. Если количество столбцов матрицы нечетное, то в качестве последней суммы принять значение элемента A(i,n).
20. Элементы каждой строки прямоугольной матрицы сдвинуть циклически вправо, не затрагивая при этом положения максимального элемента.
Примечание. Если максимальный элемент находится в k-м столбце, то производится сдвиг
A(i,1) à A(i,2), A(i,2) à A(i,3), …, A(i,k-1) à A(i,k+1), …, A(i,n-1) à A(i,n), A(i,n) à A(i,1).
21. Прямоугольная матрицы имеет в n строк и 3 столбца. Элементы строки определяют длины сторон треугольника a, b и c. Определить, сколько треугольников являются прямоугольными.
22. В каждом столбце прямоугольной матрицы определить минимальное по модулю значение для разностей пар рядом стоящих элементов столбца (A(1,j)-A(2,j), A(3,j)-A(4,j), …) и индекс первого элемента найденной пары. Если количество строк матрицы нечетное, в качестве последней разности принять значение элемента A(m,j).
23. Каждый столбец прямоугольной матрицы определяет координаты точки в n-мерном пространстве. Определить номера точек, наименее удаленных друг от друга.
Указание. Расстояние между точками i и j вычисляется по формуле
.
24. Для каждого столбца прямоугольной матрицы найти разность S между максимальным и минимальным элементами. Определить номер столбца, имеющего минимальное значение S.