Задания для подготовки к работе. 1. Изучить способы описания и использования многомерных массивов; назначение подпрограмм, их описание и обращение к подпрограммам.

1. Изучить способы описания и использования многомерных массивов; назначение подпрограмм, их описание и обращение к подпрограммам.

2. Разбить задачу соответствующего варианта на подзадачи таким образом, чтобы решение каждой подзадачи описывалось подпрограммой, а основная программа состояла бы из последовательности вызовов подпрограмм. Размеры матриц задать константами.

3. Для каждой подзадачи описать спецификацию и блок-схему алгоритма. Спецификация содержит заголовок подпрограммы, назначение, входные и выходные параметры.

4. Подобрать наборы тестовых данных.

Варианты заданий

1. Определить количество классов эквивалентных столбцов данной прямоугольной матрицы. Столбцы считать эквивалентными, если равны множества их элементов.

2. Дана квадратная матрица. Заменить предпоследний столбец первой из строк, в которой находится максимальный элемент.

3. Дано m точек в n-мерном пространстве. Упорядочить точки по неубыванию их расстояний до начала координат.

4. Определить количество классов эквивалентных строк данной прямоугольной матрицы. Строки считать эквивалентными, если равны суммы их элементов.

5. Дана квадратная матрица Aи натуральное число n. Определить матрицу В= A1+ A2 +...+ An.

6. Дан массив квадратных матриц. Определить число матриц, строки которых упорядочены по невозрастанию элементов.

7. Упорядочить строки данной вещественной матрицы по неубыванию наибольших элементов строк.

8. Дана квадратная матрица. Упорядочить ее строки по неубыванию сумм элементов строк.

9. Определить, является ли данная целочисленная квадратная матрица ортонормированной, то есть такой, в которой скалярное произведение каждой пары различных строк равно нулю, а скалярное произведение каждой строки на себя равно единице.

10. Найти максимальный элемент прямоугольной матрицы в заштрихованной области (рис. 3).

 
 

Рис. 3

11. Дана квадратная матрица. Определить k – количество "особых" элементов матрицы, считая элемент "особым", если он больше суммы остальных элементов своего столбца.

12. Дана матрица. Определить k – количество "особых" элементов данной матрицы, считая элемент "особым", если в строке слева от него находятся меньшие элементы, а справа – бóльшие.

13. Дана матрица. Упорядочить ее строки по убыванию первых элементов строк, если это возможно.

14. Элемент матрицы назовем седловой точкой, если он является наименьшим в своей строке и наибольшим в своем столбце. Для заданной целочисленной матрицы вывести индексы всех ее седловых точек.

15. Дан массив целочисленных матриц. Вывести матрицы, имеющие наибольшее число нулевых строк.

16. Дана прямоугольная матрица. Упорядочить столбцы матрицы по невозрастанию минимальных элементов столбцов.

17. Дана квадратная матрица, все элементы которой различны. Назовем псевдодиагональю множество элементов этой матрицы, лежащих на прямой, параллельной прямой, содержащей элементы ai, n-i+1, где n– порядок матрицы. Найти сумму максимальных элементов псевдодиагоналей данной матрицы.

18. Дана прямоугольная матрица, все элементы которой различны. Найти максимальный элемент матрицы в заштрихованной области (рис. 4), где min – минимальный элемент матрицы.

 
 

Рис. 4

19. Дана квадратная матрица. Если суммы элементов строк матрицы различны, то транспонировать матрицу.

20. Дана квадратная матрица. Заменить две ее первые строки последним из столбцов, в котором находится минимальный элемент матрицы.

21. Дана квадратная матрица. Найти наименьшее из значений элементов побочной диагонали матрицы и соседних с ними справа и слева.

22. Дан массив вещественных квадратных матриц. Вывести матрицы с наименьшей нормой. В качестве нормы матрицы взять максимум абсолютных величин ее элементов.

23. Каждая строка данной матрицы представляет собой координаты вектора в пространстве. Определить, какой из этих векторов образует минимальный угол с данным вектором .

24. Дана вещественная матрица, все элементы которой различны. Найти скалярное произведение строки, в которой находится наибольший элемент матрицы, на столбец с наименьшим элементом.

25. Даны две квадратные матрицы A и B. Определить, являются ли они взаимно обратными (A = B-1).

26. Дана квадратная матрица, все элементы которой различны. Назовем псевдодиагональю множество элементов этой матрицы, лежащих на прямой, параллельной прямой, содержащей элементы ai,i. Найти сумму максимальных элементов всех псевдодиагоналей данной матрицы.

27. Дана квадратная матрица, все элементы которой различны. Поменять местами строки, в которых находятся максимальный и минимальный элементы.

28. Дана прямоугольная матрица, все элементы которой различны. Найти среднее геометрическое модулей элементов в заштрихованной области (рис. 5), где max – максимальный элемент матрицы.

 
 

Рис. 5

29. Дана квадратная матрица. Заменить предпоследнюю строку матрицы первым из столбцов, в котором находится минимальный элемент матрицы.

30. Если данная квадратная матрица A симметрична, то заменить A ее квадратом.

Контрольные вопросы

1. Перечислите способы описания многомерных массивов.

2. Как располагаются в памяти ЭВМ элементы многомерных массивов?

3. Как осуществляется ввод и вывод многомерных массивов?

4. В каких случаях целесообразно использовать подпрограммы?

5. Изобразите синтаксическую диаграмму описания процедуры.

6. Изобразите синтаксическую диаграмму описания функции.

7. В чем разница между параметрами-переменными, параметрами-константами и параметрами-значениями?

8. Как описать параметр, который передается подпрограмме только для чтения?

9. Перечислите правила обращения к процедурам.

ЛАБОРАТОРНАЯ РАБОТА № 6

Использование функций при работе со строками

Цель работы: получение навыков работы со строками. Закрепление навыков работы с подпрограммами.

Наши рекомендации