- •ИНФОРМАТИКА
- •Массивы данных
- •Одномерный массив представляет собой линейную структуру данных – список, в котором адрес элемента
- •Двумерный массив представляет собой табличную структуру данных, в которой адрес элемента определяется двумя
- •Обработка массивов
- •Примеры обработки одномерного массива
- •Задание 2. Алгоритм записан на псевдокоде:
- •Обработка матриц
- •Фрагмент программы для ввода матрицы X(2, 3)
- •Примеры обработки матриц
- •Задание 2. Дан массив А размерами NxM. Какой алгоритм реализуется в приведенной
ИНФОРМАТИКА
Литература (весенний семестр)
1.Кудинов Ю.И., Пащенко Ф.Ф. Основы современной информатики. Учебное пособие. 2011 г.
2.Воробьева А.П. «Информатика. Базовый курс. Часть 1». Учебное пособие. 2011 г.
3.Кисленко Н.П. «Информатика. Базовый курс. Часть 3». Учебное пособие. 2012 г.
4.Воскобойников Ю.Е. и др. «Основы вычислений и программирования в пакете MathCad». Учебное пособие. 2012 г.
Массивы данных
Массив
тип данных, который представляет собой упорядоченный набор
однотипных элементов.
Число элементов в массиве называют размерностью массива.
Доступ к каждому элементу массива осуществляется с помощью индексов (номеров), определяющих местоположение (адрес) элемента в массиве.
В зависимости от количества
Одномерный массив представляет собой линейную структуру данных – список, в котором адрес элемента определяется одним индексом (порядковым номером элемента в списке).
В математике одномерноa ai му массиву
i 1, n
соответствует понятие n-мерного вектора
.
Одномерный массив A(N) целых чисел (N = 6)
3 |
-7 |
45 |
93 |
0 |
-12 |
a1 |
a2 |
a3 |
a4 |
a5 |
a6 |
Двумерный массив представляет собой табличную структуру данных, в которой адрес элемента определяется двумя индексами. Первый индекс указывает номер строки, а второй индекс – номер
столбца, |
на |
пересечении |
которых |
|||||
находится элемент. |
|
a |
a |
... |
a |
|
||
A aij m n |
|
|
|
|||||
В математике |
|
двумерному |
массиву |
|||||
|
|
|
|
11 |
12 |
|
1n |
|
|
|
|
|
|
a22. |
... |
|
|
соответствует матрица a21 |
a2n |
|||||||
|
|
A |
|
|
... |
... |
||
i – номер строки; |
|
... ... |
||||||
|
|
|
|
|
|
|
||
j – номер столбца; |
|
|
am2 |
... |
|
|
||
m – число строк; |
|
am1 |
amn |
n – число столбцов.
Обработка массивов
При обработке массивов используются циклические структуры, реализующие базовые алгоритмы решения задач:
–накопление |
суммы |
или |
произведения;
–организация счетчика;
–поиск минимального (максимального) элемента.
Процедуры ввода/вывода массива
осуществляются поэлементно с
Примеры обработки одномерного массива
Задание 1. В приведенном ниже фрагменте блок-схемы заполняется, а потом изменяется.
? |
A10 = 1 |
A |
|
В результате последний |
|||
|
|||
|
|
10 |
Задание 2. Алгоритм записан на псевдокоде:
Ответ: алгоритм поиска максимального (m1) и минимального (m2) элементов массива.
В |
Какой циклический алгоритм |
n=6 и |
|
|
= |
||
(18; |
для переменных m1 и m2 |
|
r |
будетреализуется в данной задаче ?92 |
|||
|
|
|
|
Обработка матриц
Для |
|
Ответ: |
|
двойной |
||
цикл, |
|
|
|
в |
||
него |
|
for j:=n1 to n2 do |
|
|
||
При |
for i:=m1 to m2 do |
|
чем |
|||
|
|
|||||
переменная |
|
<тело цикла>; |
|
для |
||
каждого |
|
|
все |
|||
значения |
|
|
|
|
по |
|
Как будет выглядеть двойной |
||||||
|
||||||
строкам |
|
|
|
|
цикл |
|
При |
|
|
|
|
||
цикл при обработке элементовномер |
||||||
матрицы по столбцам? |
|
j, |
||||
строки, |
|
номер |
столбца. |
|
||
определяющей |
|
|
В этом случае двойной цикл, например на языке Турбо Паскаль, выглядит следующим образом.
for i:=m1 to m2 do
Фрагмент программы для ввода матрицы X(2, 3)
2,5
X 12,9
по строкам |
|||
|
|
|
Program Vvod; |
|
|
|
Var |
0,7 |
4,1 |
X: array [1..2, 1..3] of real; |
|
i, j: integer; |
|||
|
|
|
|
|
|
|
Begin |
5 |
8 |
|
|
|
writeln (‘Ведите матрицу X’); |
for i:=1 to 2 do
for j:=1 to 3 do read (x[i, j]);
…………………..
На клавиатуре набираем числа:
2.5 0?.7 4.1
12.9 5 8
Примеры обработки матриц
Задание 1. Целочисленный двумерный массив А, состоящий из 3 строк и 3 столбцов, заполняется значениями:
Элемент массива во 2 строке и 3 столбце (A[2,3]? имеет значение …
Отве A[2, 3] = 23