Главная / Учебники / Информатика 9 класс / Параграф § 1.4
| Глава: | Глава 1. Алгоритмы и программирование |
|---|---|
| Параграф: | § 1.4 - Обработка одномерных массивов целых чисел на языке Паскаль |
| Учебник: | Информатика 9 класс - |
| Автор: | Босова Людмила Леонидовна |
| Год: | 2025 |
| Издание: | 7-е издание, стереотипное |
Обработка одномерных массивов целых чисел на языке Паскаль
Этот раздел учебника посвящен изучению одномерных массивов, их описанию, заполнению, выводу и обработке на языке программирования Паскаль. Массив — это структурированный тип данных, представляющий собой набор элементов одного типа, имеющих общее имя, где доступ к каждому элементу осуществляется по его порядковому номеру, называемому индексом. В одномерном массиве элементы образуют линейную последовательность.
Описание массива в Паскале происходит с использованием конструкции var <имя массива>: array [<нач. знач. индекса>..<кон. знач. индекса>] of <тип элементов>;. Например, var A: array [1..8] of integer; описывает массив A из 8 целых чисел с индексами от 1 до 8.
Обращение к элементу массива осуществляется по имени массива и индексу в квадратных скобках, например, A[i]. Индекс может быть константой, переменной или арифметическим выражением, результат которого должен находиться в диапазоне индексов массива.
Рассмотрены различные способы заполнения массива: ввод с клавиатуры, генерация случайных чисел, присвоение значений по формуле или константами в разделе const.
Вывод массива также выполняется в цикле, используя процедуры write или writeln, часто с указанием индекса элемента для наглядности.
Отдельное внимание уделяется вычислению суммы элементов массива. Алгоритм включает инициализацию переменной-аккумулятора (например, s := 0) и последовательное добавление к ней каждого элемента массива в цикле: s := s + A[i].
Последовательный поиск в массиве включает задачи нахождения наибольшего/наименьшего элемента, поиска элемента, равного заданному значению \( x \), и подсчета количества элементов, удовлетворяющих условию (например, if A[i] mod 2 = 0 then k := k + 1;). Обсуждается использование инварианта цикла для обоснования корректности циклических алгоритмов.
Новым и важным алгоритмом является сортировка массива (упорядочение) — перераспределение его элементов в определенном порядке (по возрастанию или невозрастанию). В качестве примера подробно рассмотрен алгоритм сортировки выбором, который осуществляется следующим образом:
Приводится фрагмент программы на Паскале с использованием вложенного цикла для реализации сортировки выбором: внешний цикл перебирает элементы, которые нужно поставить на свое место, а внутренний цикл ищет максимальный элемент в оставшейся части.
Также рассматриваются два основных подхода к обработке набора однотипных данных:
Вводится понятие линейного односвязного списка как альтернативной структуры данных, которая может использоваться вместо массивов в современных приложениях. Список — это последовательность связанных элементов, которые могут быть разбросаны в оперативной памяти. В отличие от массива, доступ к \( k \)-му элементу в списке осуществляется последовательно (пошагово), что называется последовательным доступом, а не произвольным (прямым) доступом по индексу. Элементы списка связаны через хранение адреса следующего элемента. Списки обеспечивают более эффективное использование оперативной памяти по сравнению с массивами, когда заранее неизвестен объем данных.
Одномерные массивы в Паскале – это набор элементов одного типа, доступ к которым осуществляется по индексу. Массив описывается как var <имя>: array [<нач.индекс>..<кон.индекс>] of <тип>;.
Элемент массива вызывается как A[i]. Заполнение массива может происходить вводом с клавиатуры, генерацией случайных чисел или использованием формулы.
Важные операции: вычисление суммы элементов (инициализация аккумулятора s := 0, затем s := s + A[i] в цикле), поиск максимума/минимума, поиск элемента и подсчет элементов по условию.
Сортировка выбором упорядочивает массив. На каждой итерации находится максимальный элемент в несортированной части и меняется местами с первым элементом этой части. Этот процесс повторяется до полной сортировки.
Существуют два подхода к обработке данных: обработка всего массива (требует больше памяти) и последовательная обработка (экономит память, но нет повторного доступа). Альтернативой массивам является линейный односвязный список, обеспечивающий эффективное использование памяти за счет последовательного доступа к элементам.
Основные понятия:
Основные типы обработки массивов:
for i := 1 to N do
begin imax := i;
for j := i+1 to N do if A[j] > A[imax] then imax := j;
x := A[i]; A[i] := A[imax]; A[imax] := x
end;
Преимущества списка перед массивом:
Задали создать проект?
Создай с помощью ИИ за 5 минут
Список готовых проектов к текущему параграфу.
ВНИМАНИЕ: Представленные фрагменты из учебных материалов используются исключительно в научно-образовательных целях в объеме, оправданном поставленной целью.
Данное использование осуществляется в рамках, установленных законодательством об авторском праве (в частности, нормами о свободном использовании произведения для образовательных целей).
В соответствии с законодательством, автор и источник заимствования указаны для каждого используемого фрагмента.