Решение задач с использованием одномерных массивов.
Ключевые слова:
В языках программирования массивы используются для реализации таких структур данных, как последовательности (одномерные массивы) и таблицы (двумерные массивы).
Решение разнообразных задач, связанных с обработкой массивов, базируется на использовании таких типовых алгоритмов, как:
-
суммирование значений элементов массива;
-
поиск элемента с заданными свойствами;
-
сортировка массива.
Перед использованием в программе массив должен быть описан, т. е. должно быть указано имя массива, количество элементов массива и их тип. Это необходимо для того, чтобы выделить участок памяти нужного размера для хранения массива.
Общий вид описания одномерного массива:
var <имя_массива>: array [<мин_знач_индекса> . . <макс_знач_индекса>] of <тип_элементов>;
Пример
var a: array [1..10] of integer;
Здесь описан массив а из 10 целочисленных значений. При выполнении этого оператора в памяти компьютера будет выделено место для хранения десяти целочисленных переменных.
Массив, элементы которого имеют заданные начальные значения, может быть описан в разделе описания констант:
const b: array [1..5] of integer = (1, 2, 3, 5, 7);
В этом случае не просто выделяются последовательные ячейки памяти — в них сразу же заносятся соответствующие значения.
Заполнять массив можно либо вводя значение каждого элемента с клавиатуры, либо присваивая элементам некоторые значения в программе. При этом может использоваться цикл с параметром. Задавать значения элементов массива можно с помощью оператора присваивания.
Например, для ввода с клавиатуры значений элементов описанного выше массива а используется следующий цикл с параметром:
for i:=l to 10 do read (a[i]);
Задавать значения элементов массива можно с помощью оператора присваивания. Например:
for i:=l to 10 do a[i]:=i;
В следующем фрагменте программы организовано заполнение целочисленного массива а, состоящего из 10 элементов, случайными числами, значения которых изменяются в диапазоне от 0 до 99:
randomize;
for i:=l to 10 do a[i]:=random(100);
Суммирование элементов массива осуществляется по тому же принципу, что и суммирование значений простых переменных: за счёт поочерёдного добавления слагаемых.
Под сортировкой (упорядочением) массива понимают перераспределение значений его элементов в некотором определённом порядке.
Сортировка выбором (например, по невозрастанию) осуществляется следующим образом:
в массиве выбирается максимальный элемент; максимальный и первый элементы меняются местами (первый элемент считается отсортированным); в неотсортированной части массива снова выбирается максимальный элемент; он меняется местами с первым неотсортированным элементом массива; действия, описанные в п. 3, повторяются с неотсортированными элементами массива до тех пор, пока не останется один неотсортированный элемент (его значение будет минимальным).
var <имя_массива>: array [<мин_знач_индекса> .. <макс_знач_индекса>] of тип_элементов;
Заполнять массив можно либо вводя значение каждого элемента с клавиатуры, либо присваивая элементам некоторые значения в программе. При заполнении массива и его выводе на экран используется цикл с параметром.
При решении разнообразных задач, связанных с обработкой массивов, используются такие типовые алгоритмы, как: суммирование элементов массива; поиск элемента с заданными свойствами; сортировка массива.
Приведём фрагмент программы, реализующий описанный алгоритм:
for i:=l to n-1 do begin
imax:=i;
for j:=i+l to n do if a[j]>a[imax] then imax:=j;
x:=a[i];
a[i]:=a[imax];
a[imax]:=x
end;
Вопросы и задания
-
Ознакомьтесь с материалами презентации к параграфу, содержащейся в электронном приложении к учебнику. Какими слайдами вы могли бы дополнить презентацию?
-
Каким образом может быть представлен поиск наибольшего массива?
-
Какими способами можно заполнить массив?
Самое главное
Массив - упорядоченное множество однотипных элементов, у которых есть общее имя и порядковый номер.
Массив — это поименованная совокупность однотипных элементов, упорядоченных по индексам, определяющим положение элементов в массиве.
В языках программирования массивы используются для реализации таких структур данных, как последовательности и таблицы.
Перед использованием в программе массив должен быть описан командой array [1..n] of далее идет тип. Общий вид описания одномерного массива:
var <имя_массива>: array [<мин_знач_индекса> .. <макс_знач_индекса>] of тип_элементов;
Заполнять массив можно либо вводя значение каждого элемента с клавиатуры, либо присваивая элементам некоторые значения в программе.
При заполнении массива и его выводе на экран используется цикл с параметром.
При решении разнообразных задач, связанных с обработкой массивов, используются такие типовые алгоритмы, как:
суммирование элементов массива;
поиск элемента с заданными свойствами;
сортировка массива.
Суммирование элементов массива осуществляется по принципу суммирования значений простых переменных: за счёт поочерёдного добавления слагаемых.
В программировании поиск — одна из наиболее часто встречающихся задач не вычислительного характера.
Для решения типовых задач поиска в программе необходимо организовать последовательный просмотр элементов массива и сравнение значения очередного просматриваемого элемента с неким образцом.
Так же как циклы позволяют компактно записывать большое количество действий, массивы позволяют компактно обозначить (дать имя) большой объем информации.
Под сортировкой (упорядочением) массива понимают перераспределение значений его элементов в некотором определённом порядке. целыми числами. Цель сортировки заключается в том, чтобы облегчить последующий поиск элементов: искать нужный элемент в упорядоченном массиве легче.