I. Свойства массива Массив — это последовательность однотипных элементов, где каждый элемент имеет свой порядковый номер. Элемент массива — переменная в составе массива. Разрядность массива — количество элементов в массиве. 1)Все элементы массива одного типа — однородность. 2)Размер массива задаётся один раз и не меняется на протяжении работы программы — постоянство. 3)Ко всем элементам массива имеется одинаковый доступ — равнодоступность. 4)Все элементы массива располагаются последовательно в ячейках оперативной памяти — последовательность расположения. 5)Элементы массива однозначно идентифицируются своими индексами — индексация. 6)Индексы должны быть простым порядковым типом данных — упорядоченность. II. Ввод и вывод массива Перед началом работы с массивом в программе нужно объявить массив в разделе описания переменных. Раздел описания переменных начинается с var. Присваиваем массиву имя, далее пишем служебное слово array, которое обозначает «массив», после в квадратных скобках указываем константы, определяющие диапазон индексов массива, дальше of — служебное слово «с», указываем тип элементов массива. Общий вид: <имя массива>: array [<нижний индекс> .. <верхний индекс>] of <тип элементов>;. Запись массива на языке программирования Pascal var M: array [1..10] of integer; В объявленном массиве может быть 10 элементом с соответствующими порядковыми номерами от 1 до 10. Напишем программу, которая будет считывать отдельно каждый элемент массива, вводимый с клавиатуры, и запоминать его. А после этого выведет весь массив на экран. Для ввода значений с клавиатуры будем использовать оператор read и счётчик — цикл for. Для вывода массива воспользуемся оператором write и циклом for. Значения в массиве можно расставить случайным образом. Для генерации чисел от 0 до N используется запись random (N). Перед использованием функции необходимо инициализировать датчик случайных чисел с помощью процедуры randomize. II. Операции обработки одномерных массивов Основные операции обработки массивов: -вычисление суммы элементов массива; -поиск максимального или минимального значения в массиве; -поиск максимального или минимального среди всех элементов массива, удовлетворяющих некоторому условию; -обмен значениями между элементами; -реверс — перестановка элементов массива местами в обратном порядке (последний становится первым, первый — последним и т. д. Рассмотрим подробнее каждую операцию. Вычислим сумму элементов массива из предыдущей теории — усовершенствуем программу. Цикл, с помощью которого выводился массив, заменим на цикл, который будет прибавлять к переменной s каждый последующий элемент массива. Задачи на поиск в массиве Поиск максимального значения. Идея поиска максимального значения заключается в следующем: каждый элемент массива поочерёдно сравнивается со следующим. Если он больше, то некоторой переменной max будет присвоено значение этого элемента. Напишем программу. Ответ: 100. Найдём наибольшее число, удовлетворяющее некоторому условию. Задача: найти максимальное чётное число. Для этого добавим в условие проверку на чётность при помощи операции mod. Ответ: 8. Обмен значениями между элементами Допустим, нам нужно удалить некоторый элемент массива. Удалим элемент с индексом 6. Для этого добавляем ещё одну переменную, которая будет обозначать индекс удаляемого элемента. Далее массив будем выводить по частям. До удаляемого элемента — без изменений, пропустим удаляемый элемент и выведем остаток IV. Двумерный массив Двумерный массив представляет собой некоторую таблицу. Обращение к ячейкам этой таблицы строится по аналогии с игрой «Морской бой», т. е. чтобы назвать нужную клетку, указываем название строки и столбца. При работе с одномерными массивами обращение к элементу массива записывается следующим образом: M[3]. Двумерный массив состоит из нескольких одномерных. Обращение к элементу двумерного массива строится из номера строки и номера столбца элемента. Рассмотрим пример массива из 3 строк и 6 столбцов. Назовём этот массив MM. И обратимся к элементу во второй строке четвёртого столбца: MM[2, 4]. Общий вид: <имя массива>: array [<нижний индекс строки> .. <верхний индекс строки>, <нижний индекс столбца> .. <верхний индекс столбца>] of <тип элементов>;. В Pascal такой массив задаётся следующим образом: var MM: array [1..3, 1..6] of integer;. Напишем программу для такого массива и выведем его на экран. После begin будем присваивать вручную значение каждому элементу, тем самым заполняя массив. Вывод массива будем осуществлять при помощи цикла for, как мы это делали в предыдущих теориях, но для каждой строки должен быть свой счётчик.
Комментарии
I. Свойства массива Массив —
I. Свойства массива Массив — это последовательность однотипных элементов, где каждый элемент имеет свой порядковый номер. Элемент массива — переменная в составе массива. Разрядность массива — количество элементов в массиве. 1)Все элементы массива одного типа — однородность. 2)Размер массива задаётся один раз и не меняется на протяжении работы программы — постоянство. 3)Ко всем элементам массива имеется одинаковый доступ — равнодоступность. 4)Все элементы массива располагаются последовательно в ячейках оперативной памяти — последовательность расположения. 5)Элементы массива однозначно идентифицируются своими индексами — индексация. 6)Индексы должны быть простым порядковым типом данных — упорядоченность. II. Ввод и вывод массива Перед началом работы с массивом в программе нужно объявить массив в разделе описания переменных. Раздел описания переменных начинается с var. Присваиваем массиву имя, далее пишем служебное слово array, которое обозначает «массив», после в квадратных скобках указываем константы, определяющие диапазон индексов массива, дальше of — служебное слово «с», указываем тип элементов массива. Общий вид: <имя массива>: array [<нижний индекс> .. <верхний индекс>] of <тип элементов>;. Запись массива на языке программирования Pascal var M: array [1..10] of integer; В объявленном массиве может быть 10 элементом с соответствующими порядковыми номерами от 1 до 10. Напишем программу, которая будет считывать отдельно каждый элемент массива, вводимый с клавиатуры, и запоминать его. А после этого выведет весь массив на экран. Для ввода значений с клавиатуры будем использовать оператор read и счётчик — цикл for. Для вывода массива воспользуемся оператором write и циклом for. Значения в массиве можно расставить случайным образом. Для генерации чисел от 0 до N используется запись random (N). Перед использованием функции необходимо инициализировать датчик случайных чисел с помощью процедуры randomize. II. Операции обработки одномерных массивов Основные операции обработки массивов: -вычисление суммы элементов массива; -поиск максимального или минимального значения в массиве; -поиск максимального или минимального среди всех элементов массива, удовлетворяющих некоторому условию; -обмен значениями между элементами; -реверс — перестановка элементов массива местами в обратном порядке (последний становится первым, первый — последним и т. д. Рассмотрим подробнее каждую операцию. Вычислим сумму элементов массива из предыдущей теории — усовершенствуем программу. Цикл, с помощью которого выводился массив, заменим на цикл, который будет прибавлять к переменной s каждый последующий элемент массива. Задачи на поиск в массиве Поиск максимального значения. Идея поиска максимального значения заключается в следующем: каждый элемент массива поочерёдно сравнивается со следующим. Если он больше, то некоторой переменной max будет присвоено значение этого элемента. Напишем программу. Ответ: 100. Найдём наибольшее число, удовлетворяющее некоторому условию. Задача: найти максимальное чётное число. Для этого добавим в условие проверку на чётность при помощи операции mod. Ответ: 8. Обмен значениями между элементами Допустим, нам нужно удалить некоторый элемент массива. Удалим элемент с индексом 6. Для этого добавляем ещё одну переменную, которая будет обозначать индекс удаляемого элемента. Далее массив будем выводить по частям. До удаляемого элемента — без изменений, пропустим удаляемый элемент и выведем остаток IV. Двумерный массив Двумерный массив представляет собой некоторую таблицу. Обращение к ячейкам этой таблицы строится по аналогии с игрой «Морской бой», т. е. чтобы назвать нужную клетку, указываем название строки и столбца. При работе с одномерными массивами обращение к элементу массива записывается следующим образом: M[3]. Двумерный массив состоит из нескольких одномерных. Обращение к элементу двумерного массива строится из номера строки и номера столбца элемента. Рассмотрим пример массива из 3 строк и 6 столбцов. Назовём этот массив MM. И обратимся к элементу во второй строке четвёртого столбца: MM[2, 4]. Общий вид: <имя массива>: array [<нижний индекс строки> .. <верхний индекс строки>, <нижний индекс столбца> .. <верхний индекс столбца>] of <тип элементов>;. В Pascal такой массив задаётся следующим образом: var MM: array [1..3, 1..6] of integer;. Напишем программу для такого массива и выведем его на экран. После begin будем присваивать вручную значение каждому элементу, тем самым заполняя массив. Вывод массива будем осуществлять при помощи цикла for, как мы это делали в предыдущих теориях, но для каждой строки должен быть свой счётчик.