
- •Лабораторная работа №7
- •1. Теоретическая часть
- •1.1. Описание подпрограмм в языке программирования Pascal.
- •1.2. Оформление подпрограмм в блок-схемах алгоритмов.
- •1.3 Пример составления алгоритма и программы на языке Pascal для обработки одномерных массивов с использованием подпрограмм.
- •2. Практическая часть
- •2.1 Требования к выполнению работы:
- •2.2 Варианты индивидуальных заданий.
- •2.3 Контрольные вопросы и практические задания:
2. Практическая часть
2.1 Требования к выполнению работы:
Составить блок-схему алгоритма и программу для решения индивидуального задания.
Предусмотреть вывод на печать исходных и результирующих массивов, подробных промежуточных и конечных результатов.
Предусмотреть в программе не менее трех подпрограмм для выполнения задания. В программе обязательно использование и подпрограмм-процедур, и подпрограмм-функций.
Значения элементов массивов задавать с помощью генератора случайных чисел random, путем ввода с клавиатуры либо по указанной формуле в соответствии с заданием.
Порядок выполнения работы.
1. Выполнить анализ задания, сформулировать постановку задачи.
2. Составить блок-схему алгоритма.
3. Составить программу на языке Pascal с использованием подпрограмм. Предусмотреть ввод исходных данных и вывод результатов на экран.
4. Выполнить проверку работоспособности программы на различных исходных данных.
5. Выполнить анализ полученных результатов.
2.2 Варианты индивидуальных заданий.
Варианты индивидуальных заданий выбираются из таблицы 7 в соответствии с номером студента в списке группы в журнале преподавателя.
Таблица 7. Варианты индивидуальных заданий
№ п/п |
Задание |
1 |
2 |
1 |
Даны два массива действительных чисел: A(25) и R(20). Элементы массива А формируются случайным образом в диапазоне [-10;12], а массива R – в диапазоне [-28;32]. Найти количество отрицательных элементов в каждом массиве и среднее арифметическое отрицательных элементов того массива, в котором таких элементов больше. |
2 |
Даны две матрицы целых чисел: С(7x6) и D(8x5). Элементы матриц формируются по формулам: Cij = 11 + i*j – 3i + 4j Dij = –8 + 2i*j – 5i + 6j В каждой матрице определить номер строки с наибольшей суммой элементов. |
3 |
Даны два одномерных массива вещественных чисел A(4) и C (5) и две матрицы D(4x5) и F(5x5). Элементы матриц и массивов вводятся в программе с клавиатуры. Определить массив X, который вычисляется по следующей формуле: X = A*D + C + C*F Определить наибольший по модулю элемент массива X. |
4 |
Даны две матрицы действительных чисел: A(7x7) и B(5x5). Элементы матриц вводятся в программе с клавиатуры. В каждой матрице найти количество нулевых элементов, расположенных выше главной диагонали, ниже главной диагонали и на главной диагонали. |
5 |
Даны три матрицы целых чисел: X(3x3), Y(3x5) и A(5x5). Найти матрицу B, которая определяется по следующей формуле: B = 5X*Y– 2X*Y*A + Y*A Определить разницу максимальных элементов в матрицах B и А. |
6 |
Даны две матрицы действительных чисел: B(8x5) и V(6x7). Элементы матрицы B формируются случайным образом в диапазоне [-20;10], а матрицы V – в диапазоне [-40;36]. Найти среднее арифметическое значение для каждой матрицы. Упорядочить в каждой матрице четные строки по убыванию, а нечетные – по возрастанию. |
7 |
Даны два массива целых чисел: D(20) и A(30). Элементы массивов вводятся в программе с клавиатуры. Найти в каждом массиве количество нулевых, положительных и отрицательных элементов. Определить сумму всех элементов того массива, в котором положительных элементов больше. |
1 |
2 |
8 |
Даны два массива целых чисел: A(35) и D(25). Элементы массива A формируются случайным образом в диапазоне [-15;13], а элементы массива D – в диапазоне [-8;12]. В каждом массиве поменять местами первый нулевой и последний отрицательный элементы. Если нулевых или отрицательных элементов в массиве нет, оставить его без изменений. |
9 |
Даны три матрицы целых чисел: A(4x4), B(4x6) и C(6x6). Найти матрицу D, которая определяется по следующей формуле: D = A*B – B*C – A*B*C Определить количество нулевых элементов в матрице D. |
10 |
Даны две матрицы действительных чисел: T(5x8) и X(9x7). Элементы матриц формируются по формулам: Tij = 5.2i*sin(i + j) – 0.6i*j Xij = –3.1i*sin(i + 2j) + 0.35i*j В каждой матрице найти сумму элементов столбца, в котором расположен максимальный элемент. |
11 |
Даны два массива целых чисел: C(30) и D(40). Элементы массива C формируются случайным образом в диапазоне [-25;15], а элементы массива D – в диапазоне [-20;30]. В каждом массиве найти максимальный элемент и заменить нулями все элементы, равные максимальному, кроме первого. |
12 |
Даны две матрицы целых чисел: F(7x6) и D(6x7). Элементы матриц вводятся в программе с клавиатуры. Найти в каждой матрице соотношение четных и нечетных по значению элементов, и если четных элементов больше, заменить их нулями. |
13 |
Даны две матрицы действительных чисел: C(5x5) и D(7x7). Элементы матрицы C формируются случайным образом в диапазоне [-12;24], а матрицы D – в диапазоне [-20;10]. Определить в каждой матрице сумму элементов, расположенных выше главной диагонали и сумму элементов, расположенных ниже главной диагонали. |
14 |
Даны два массива целых чисел: A(20) и B(15). Элементы массивов вводятся в программе с клавиатуры. Найти в каждом массиве минимальный элемент и количество элементов, равных по модулю минимальному. |
15 |
Даны две матрицы целых чисел: X(5x4) и Z(7x5). Элементы матриц формируются по формулам: Xij = –2i2 + 3j – 2i*j Zij = 3i2 – 5j + 4i*j В каждой матрице увеличить вдвое элементы строки, в которой расположен минимальный элемент. |
1 |
2 |
16 |
Даны две матрицы целых чисел: A(5x5) и B(6x6). Элементы матриц вводятся в программе с клавиатуры. Заменить значением максимального элемента все элементы той части матрицы, где он расположен (выше главной диагонали, ниже главной диагонали, на главной диагонали). |
17 |
Даны два массива вещественных чисел: B(30) и C(25). Элементы массивов вводятся в программе с клавиатуры. В каждом массиве сдвинуть элементы циклически таким образом, чтобы максимальный элемент оказался на первом месте. |
18 |
Даны два массива действительных чисел: B(30) и D(25). Элементы массивов формируются по формулам: Bi = sin(i*π/8) + 3cos(i) Di = 2sin(i*π/12) – 4cos(i) Удалить из каждого массива элементы, абсолютное значение которых меньше 1. |
19 |
Даны две матрицы вещественных чисел A(7x5) и C(8x5) и два одномерных массива X(7) и Y(8). Элементы матриц и массивов вводятся в программе с клавиатуры. Определить массив B, который вычисляется по следующей формуле: B = X*A + Y*C Определить среднее геометрическое массива B. |
20 |
Даны две матрицы вещественных чисел: X(4x5) и Y(6x4). Элементы матриц формируются по формулам: Xij = 4sin(i) – 3.2j + 2i + 0.5 Yij = 3.1sin(i) – 0.9j + 1.5i – 1.5 Найти в каждой матрице количество отрицательных элементов и вычислить сумму всех элементов той матрицы, у которой количество отрицательных элементов больше. |
21 |
Даны два массива действительных чисел: X(40) и C(30). Элементы массивов формируются по формулам: Xi = 0.4i2 – 3.5i + 5.1 Сi = –0.2i2 + 1.4i – 2.5 Найти в каждом массиве количество элементов, значения которых меньше собственного индекса. В массиве, в котором количество таких элементов больше, заменить эти элементы на собственные индексы. |
22 |
Даны две матрицы целых чисел: B(6x6) и S(8x8). Элементы матрицы B формируются случайным образом в диапазоне [-30;20], а матрицы S – в диапазоне [-50;32]. Найти в каждой матрице максимальный элемент среди элементов главной диагонали и выполнить циклический сдвиг элементов главной диагонали таким образом, чтобы максимальный элемент стал первым. |
1 |
2 |
23 |
Даны два массива целых чисел: A(25) и B(30). Элементы массива А формируются случайным образом в диапазоне [-16;22], а массива B – в диапазоне [-8;40]. В каждом массиве определить количество элементов, значение которых больше половины максимума. |
24 |
Даны два массива целых чисел: B(20) и X(22). Элементы массивов вводятся в программе с клавиатуры. Найти в каждом массиве количество элементов, значения которых нацело делятся на собственный индекс. Разделить эти элементы на собственный индекс. |
25 |
Даны два массива вещественных чисел: T(40) и R(25). Элементы массивов формируются по формулам: Ti = –2i2 + 3i – 2 Ri = 2i2 – 5i + 4 Упорядочить каждый массив по убыванию, используя сортировку выбором. В каждом упорядоченном массиве определить наибольшую разницу между соседними элементами. |
26 |
Даны два массива действительных чисел: C(20) и A(25). Элементы массивов вводятся в программе с клавиатуры. Найти среднее арифметическое значение в каждом массиве и разность этих значений. |
27 |
Даны два массива целых чисел: B(40) и S(30). Элементы массивов формируются в программе случайным образом. Найти сумму отрицательных элементов каждого массива и разность этих сумм. |
28 |
Даны два массива целых чисел: A(30) и B(35). Элементы массивов вводятся в программе с клавиатуры. Найти произведение элементов каждого массива и отношение этих произведений. |
29 |
Даны два массива действительных чисел: C(25) и K(30). Элементы массивов формируются в программе случайным образом. Найти максимальный элемент в каждом массиве и разницу этих элементов. |