Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алгоритмы обработки данных.doc
Скачиваний:
7
Добавлен:
24.11.2018
Размер:
595.46 Кб
Скачать

6.1. Ввод-вывод двумерных массивов

Пусть требуется осуществить ввод значений двумерного массива Z, состоящего из N строк и M столбцов (размерность NxM).

Решение. Сначала введем размерность массива: N и M.

Дальнейшие действия зависят от того, как будут вводиться элементы массива: по строкам или по столбцам.

Построчный ввод матрицы более естественен - так нам ее удобнее читать. В этом случае внешним циклом будет цикл по номеру строки i=1,2,…,N, а внутренним - по номеру столбца j=1,1....,M. Такой ввод рассмотрен на схеме (рис.6.1.). В случае ввода матрицы по столбцам, циклы меняются местами.

Рис.6.1. Схема алгоритма ввода а) и вывода б) двумерного массива

В последующих примерах, чтобы сократить запись алгоритма будем использовать для ввода и вывода матриц обозначения следующего вида:

Пример 6.1. Вычислить произведение элементов матрицы, не принадлежащих интервалу (X,Y) и расположенных в столбцах с номерами кратными 3.

Решение. Обозначим номер строки через i, а номер столбца – j . Поскольку в вычислении произведения участвуют элементы (причем только не принадлежащие (X,Y)) столбцов 3,6,…,M, оформим вложенные циклы следующим образом:

- внешний – по номеру столбца: j=3,6,…,M;

- внутренний – по номеру строки: i=1,2,3,…,N.

Величина t позволяет судить о том, были в матрице элементы принадлежащие (X,Y) (когда t=1) или нет (когда t=0).

Схема алгоритма приведена на рис. 6.2.

Пример 6.2. Определить количество строк матрицы, в которых содержатся более трех положительных элементов.

Решение. Для подсчета количества введем две величины:

  • k– количество положительных элементов в рассматриваемой строке (каждый раз при переходе на новую строку k=0);

  • k1 – количество строк, содержащих более трех элементов.

Вложенные циклы оформим здесь следующим образом:

  • внешний – по номеру строки: i=1,2,3,...,N;

  • внутренний – по номеру столбца: j=1,2,...,M.

Схема программы представлена на рис.6.3.

Литература

  1. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения. ГОСТ 19.701 – 90 (ИСО 5807 – 85).

  2. Мовшович С.М. Методы сортировки, м/у №1909, Гомель, ротапринт ГГТУ, 1995.

  3. Мовшович С.М. Основы алгоритмизации, м/у №1051, Гомель, ротапринт ГГТУ, 1988

  4. Светозарова Г.И. Алгоритмизация и основы программирования. – М: В.ш., 1987.

ОГЛАВЛЕНИЕ

Введение 3

1.Способы записи алгоритма 3

2.Типы алгоритмов 8

3.Линейные алгоритмы 9

4.Разветвляющийся алгоритм 11

5. Циклические алгоритмы 12

5.1. Организация циклов с предусловием и постусловием 12

5.2. Табуляция функции одной переменной 14

5.3. Применение циклов в алгоритмах обработки массивов 15

5.3.1. Ввод-вывод одномерных массивов 17

5.3.2.Алгоритм нахождения суммы элементов одномерного массива 18

5.3.3. Алгоритм нахождения минимального или максимального элемента массива и его порядкового номера 22

5.3.4. Алгоритм перестановки 23

5.3.4. Алгоритм формирования нового массива из элементов имеющегося 27

5.3.5. Поиск в упорядоченном массиве. 30

6. Алгоритмы обработки двумерных массивов 32

ЛИТЕРАТУРА 38

39