- •Лекция 6. Алгоритмы линейной и ветвящейся структуры. Алгоритмы работы меню.
- •Лекция 7. Алгоритмы циклической структуры. Циклы с предусловием. Циклы с постусловием. Типовые задачи.
- •Лекция 8. Алгоритмы обработки одномерных массивов Типовые задачи обработки одномерных массивов.
- •Лекция 9. Алгоритмы обработки матриц. Типовые задачи обработки матриц.
- •Лекция 10. Алгоритмы обработки квадратных матриц.
- •Рекомендуемая литература:
- •Разработчик:
Лекция 8. Алгоритмы обработки одномерных массивов Типовые задачи обработки одномерных массивов.
Часто для работы с множеством однотипных данных (целочисленными значениями, строками, датами и т.п.) оказывается удобным использовать массивы. Массив - структурированный тип данных, состоящий из фиксированного числа элементов одного типа. Массив имеет некоторое количество элементов, каждый элемент сохраняет значение определенного типа. Элементы в массиве пронумерованы. Такого рода массив, представляющий собой просто список данных одного и того же типа, называют простым или одномерным массивом. Для доступа к данным, хранящимся в определенном элементе массива, необходимо указать имя массива и порядковый номер этого элемента, называемый индексом.
При вводе массива необходимо последовательно вводить 1-й, 2-й, 3-й и т.д. элементы массива, аналогичным образом поступить и при выводе. Следовательно, необходимо организовать цикл. Безусловный цикл удобно использовать для обработки всего массива.
Алгоритмы, с помощью которых обрабатывают одномерные массивы, похожи на обработку последовательностей (вычисление суммы, произведения, поиск элементов по определенному признаку, выборки и т. д.). Отличие заключается в том, что в массиве одновременно доступны все его компоненты, поэтому становится возможной, например, сортировка его элементов и другие, более сложные преобразования.
Типовые алгоритмы для обработки одномерных массивов:
-
нахождение суммы всех элементов массива (или части элементов);
-
нахождение произведения всех элементов массива (или части элементов);
-
подсчет количества положительных и отрицательных элементов в массиве;
-
нахождение максимального и минимального элемента в массиве;
-
сортировка массива (расположение элементов в порядке возрастания или убывания их значений).
Лекция 9. Алгоритмы обработки матриц. Типовые задачи обработки матриц.
Если возникает необходимость хранения данных в виде таблиц, в формате строк и столбцов, то необходимо использовать многомерные массивы. Например, массив, состоящий из четырех строк и трех столбцов. Это двумерный массив. Строки в нем можно считать первым измерением, а столбцы вторым. Для доступа к данным, хранящимся в таком массиве, необходимо указать имя массива и два индекса, первый должен соответствовать номеру строки, а второй номеру столбца в которых хранится необходимый элемент.
Матрица- это двумерный массив, каждый элемент которого имеет два индекса: номер строки - i; номер столбца - j. Поэтому для работы с элементами матрицы необходимо использовать два цикла. Если значениями параметра первого цикла будут номера строк матрицы, то значениями параметра второго - столбцы (или наоборот). Обработка матрицы заключается в том, что вначале поочередно рассматриваются элементы первой строки (столбца), затем второй и т.д. до последней. Рассмотрим основные операции, выполняемые над матрицами при решении задач.
Матрицы, как и массивы, нужно вводить (выводить) поэлементно. Блок-схема ввода и вывода элементов матрицы организуется с помощью двух вложенных циклов. Например, внешний цикл организует перебор строк массива, а внутренний – столбцов. Тогда при вводе элементов массив будет заполняться по строкам. Если внешний цикл просматривает номера столбцов, а внутренний – номера строк, то массив будет заполняться по столбцам.
Типовые алгоритмы обработки матриц:
-
вычисление суммы элементов матрицы;
-
вычисление произведения элементов матрицы;
-
подсчет количества элементов, удовлетворяющих условию;
-
нахождение максимального и минимального элемента в матрице;
-
вычисление суммы (произведения, максимального, минимального и т.п.) в каждой строке или каждом столбце или в произвольной области матрицы
-
формирование одномерного массива из элементов матрицы.