Формирование и обработка двумерных массивов
Скачать 0.56 Mb.
|
Практическая работа №10 Тема: Формирование и обработка двумерных массивов Цель работы: получить навыки программирования работы с двумерными массивами Порядок выполнения работы: Повторить теоретический раздел. Решить задачи (задания 1-9) Краткая теория Двумерный массив в PascalМатрица или двумерный массив – это прямоугольная таблица чисел (или других элементов одного типа). Каждый элемент матрицы имеет два индекса (номер строки и номер столбца). Исходные данные для решения многих задач можно представить в табличной форме: Таблица результатов производственной деятельности нескольких филиалов фирмы может быть представлена так:
Или в виде двумерного массива так: Объявление двумерного массива:
Описание, ввод и вывод элементов двумерного массиваВарианты описания двумерного массива Описание массива в разделе переменных:
Описание массива через раздел type:
Ввод двумерного массива m x n с клавиатуры:
Заполнение случайными числами: «Красивый» вывод элементов двумерного массива m x n: Следующий фрагмент программы выводит на экран значения элементов массива по строкам:
Рассмотрим следующую задачу: Получены значения температуры воздуха за 4 дня с трех метеостанций, расположенных в разных регионах страны:
Т.е. запись показаний в двумерном массиве выглядела бы так:
Объявление двумерного массива:
Задание 1: Необходимо: Распечатать температуру на 2-й метеостанции за 4-й день и на 3-й метеостанции за 1-й день. Распечатать показания термометров всех метеостанций за 2-й день. Определить среднюю температуру на 3-й метеостанции. Распечатать, в какие дни и на каких метеостанциях температура была в диапазоне 24-26 градусов тепла. Задание 2. Найти сумму элементов массива (прямоугольной таблицы) размером [m x n] Задание 3. Найти максимальный элемент массива размером [m x n] Задание 4. Найти сумму всех элементов массива (переменная sum) 5 x 4, а также сумму элементов, составляющих столбцы таблицы (двумерного массива). Для хранения сумм столбцов чисел использовать одномерный массив (s). Задание 5. Найти сумму элементов двумерного массива [m x n] по строкам: 2 8 1 9 : sum = 20 3 1 7 2 : sum = 13 4 5 6 2 : sum = 17 Главная и побочная диагональ при работе с двумерными матрицами в Pascal Главная диагональ квадратной матрицы n x n (т.е. той, у которой количество строк равно количеству столбцов) проходит с верхнего левого угла матрицы (элемент 1,1) до правого нижнего угла матрицы (элемент n,n). Побочная диагональ квадратной матрицы n x n проходит с нижнего левого угла матрицы (элемент n,1) до правого верхнего угла матрицы (элемент 1,n). Формулу поиска элементов диагоналей проще всего искать, нарисовав элементы матрицы:
Учитывая, что первая цифра в программе будет соответствовать счетчику i, а вторая — счетчику j, то из таблицы можно вывести формулы: Главная диагональ матрицы в Паскаль имеет формулу: i=j Побочная диагональ матрицы в Паскаль имеет формулу: n=i+j-1 (или j=n-i+1) где n — размерность квадратной матрицы Пример: Вывести на экран сначала главную диагональ квадратной матрицы из N строк и N столбцов, а затем ее побочную диагональ. Решение: Задание 6: Найти отдельно сумму элементов главной и побочной диагонали квадратной матрицы 1 7 3 7 2 1 8 3 5 7 6 4 8 2 3 1 ------- sum1 = 9 sum2 = 30 Задание 7: Сформировать матрицу размерностью n. Вывести ее на экран. Затем преобразовать ее, заменив необходимые элементы на 0: Задание 8: Сформировать матрицу размерностью n. Вывести ее на экран. Затем преобразовать ее, заменив необходимые элементы на 0: Задание 9: Сформировать матрицу размерностью n. Вывести ее на экран. Затем преобразовать ее, заменив необходимые элементы на 0: Задание 9: Составить программу, позволяющую с помощью датчика случайных чисел сформировать матрицу размерностью N. Определить: минимальный элемент, лежащий ниже побочной диагонали; произведение ненулевых элементов последней строки. |