Сортировка элементов массива
1) Методом выбора (по возрастанию) – берется i-ый элемент массива и сравнивается со всеми элементами, расположенными после него. Если встретится элемент, меньший по значению a[i], то они меняются местами. Так продолжается до тех пор, пока все элементы не будут рассортированы.
| For i:=1 to n-1 do For y:=i+1 to n do Ifa[i]>a[y]then Begin P:=a[i]; a[i]:=a[y]; a[y]:=p; end; |
2) Методом обмена (пузырька) - сравниваются соседние элементы a[i] и a[i+1]. Если a[i]< a[i+1], то эти элементы меняются местами.Так продолжается пока все элементы не будут рассортированы.
По убыванию
| For y:=1 to n-1 do For i:=1 to n-y do Ifa[i]>a[i+1]then Begin P:=a[i]; a[i]:=a[i+1]; a[i+1]:=p; end; |
Двумерные массивы
Двумерный массив представляется собой прямоугольную матрицу. Имя массива является единым для всех его элементов. Местоположение каждого элемента определяется двумя координатами: номером строки и номером столбца.
Например: А[I,J], Mas[r+2,c-1], D[3,4].
Инициализация (присваивание начальных значений) массива заключается в присваивании каждому элементу массива одного и того же значения, соответствующего базовому типу.
Направление изменения второго индекса
(номера столбца)
j= 1 2 3 . . . n
f | ||||
Направление изменения i = 1
первого индекса …
(номера строки) к
А[2,3] или А[i,j] ( если i=2 и j=3)
Матрица в которой количество строк и столбцов равны называется правильной.
У правильной (квадратной) матрицы есть главная и побочная диагональ. Элемент главной диагонали имеет одинаковые индексы и обозначается F[x,x], а побочной- F[x,n-x+1] (где n- количество строк и столбцов)
главная |
F[1,1] | ||
F[2,2] | ||
F[3,3] |
побочная |
Транспонированной матрицей называется матрица , у которой столбцы соответствуют строкам исходной квадратной матрицы. Операция транспонирования сводится к обмену элементов матрицы, расположенных симметрично главной диагонали.
Способы описания двумерного массива
1). Typeимя типа = array [1..K, 1..N] of тип элементов;
Varимя массива : имя типа;
2). Varимя массива : array [диапазон 1 индекса, диапазон 2 индекса] of тип элементов;
гдеarray, of– «массив из» - служебные слова;
тип элементов – любой простой или структурированный;
K – максимальное количество строк;
N - максимальное количество столбцов.
Например: Соnst K= 4; N= 6;
Type massiv=array[1..20, 1..5] of real;
Var A:massiv;
B: array [1..K, 1..N] of char;
Ввод элементов массива
Ввод N,K |
j=1,N,1 |
Ввод A[i,j] |
i=1,K,1 |
Type mas=array[1..10,1..10] of real;
Var a:mas;
N,K i,j: integer: