Основные алгоритмы обработки массивов

При решении большинства задач применяются следующие приемы

1. Ввод элементов (заполнение массива)

2. Вывод на экран значений элементов массива.

3. Поиск элементов массива. Нахождение наибольшего или наименьшего значения.

4. Сортировка массива.

6.2.1 Ввод элементов (заполнение массива):

«прямое присваивание» Mass[1]:=4; Mass[2]:=12; Mass[3]:=7; … Примеры приведены для одномерного массива. Двумерные массивы обрабатываются аналогично с использованием 2-х вложенных циклов (см.вывод на экран двумерного массива)

Ввод значений с клавиатуры

For i:= to do

Read(Mass[i]);

Использование генератора случайных чисел

For i:= to do

Mass[i]:=Random(x);

По формуле (в отдельных случаях)

For i:= to do

Mass[i]:=2*i+1;

Вывод на экран значений элементов массива

Вывод одномерного массива Mass

В строку

For i:= to do

write(Mass[i]:4);

В столбец

For i:= to do

writeln(Mass[i]:4);

Вывод двумерного массива Matr в виде матрицы For i:= to do Begin For j:= to do write(Matr[i,j]:4); writeln; End; Внутренний цикл (j) выводит горизонтально текущую (i-ю) строку матрицы, а следующий за ним опрератор Writeln возвращает курсор вывода к началу следующей строки экрана

.

Поиск элементов и вычисляемых значений

При выполнении поиска элемента одномерного массива или значения, удовлетворяющего какому-либо условию, (например – кратного «3», наибольшего, среднеарифметического и др.) – в цикле перебираются все элементы. При этом элементвыделяется в общем виде (mass[i]) и для него проводятся различные действия (вычисления, сравнения и.т.п.), по результатам которых выполняется проверка на соответствие заданному условию. Найденный элемент (его значение и индекс) заносятся в дополнительные переменные, которые в конце программы выводятся на экран.

Рекомендуется выполнить вывод всего массива

Сортировка массива

При выполнении сортировки элементов одномерного массива по определенным критериям (по возрастанию, убыванию) ? используется конструкция двух вложенных циклов (внешний – «по i» и внутренний «по j»). В теле внутреннего цикла «по j» перебираются все элементы и выделяются в общем виде соседние элементы (mass[j] и mass[j+1]), которые сравниваются между собой, и при необходимости меняются местами (значениями). Внешний цикл «по i» позволяет провести выполнить внутренний цикл максимальное число раз, чтобы упорядочивание произошло не только между соседними элементами, но и во всем массиве. В конце программы упорядоченный массив выводится на экран.

Процедуры и функции

Понятие процедуры. Вызов процедуры

В практике программирования часто встречаются случаи, когда при выполнении программы приходится выполнять одни и те же вычисления, но при различных исходных данных. Чтобы исключить повторение одинаковых операторов и тем самым сделать программу проще и понятнее, можно выделить эти операторы в отдельную (автономную, локальную) часть и обращаться к ней по мере необходимости. Такая отдельная автономная часть называется Подпрограммой.

Процедура, Функция (подпрограмма) – фрагмент программы, реализующий решение какой-либо части задачи.

Обращение к Процедуре или Функции (вызов) может быть выполнено из различных частей программы. В этом случае выполнение основной программы приостанавливается и управление передается в Процедуру. По окончании работы Процедуры управление возвращается основной программе.

Вызов процедуры

Вызов процедуры (обращение к Процедуре) в основной программе:

();

где количество и тип переменных идентичны описанию Процедуры.

Все переменные, которые использует Процедура, могут быть либо глобальные, т.е. объявленные в основной программе и доступные как программе, так и всем ее Процедурам, либо локальные, объявленные внутри Процедуры (или ) и доступные только ей самой.

Структура Процедуры полностью повторяет структуру программы и располагается перед «главным» оператором BEGIN. Любая программа может иметь несколько процедур и функций.

Procedure (список переменных:);

Параметры процедуры

Var

Begin

end;

Алгоритмы. Массивы. Базовые алгоритмы


Похожие статьи.

Понравилась статья? Поделиться с друзьями: