Одномерные (линейные) массивы
Одномерные массивы Массив – упорядоченный набор одинаковых значений, объединенных одним именем. Примеры: А (14, 7, -5, 3, -10) – массив целых чисел, Зима (‘декабрь’, ‘январь’, ‘февраль’) – символьный массив. Элементы массива – переменные с индексом (индекс – порядковый номер): A[1] = 14, A[3] = -5, Зима[2] = ‘январь’
Описание массивов В разделе переменных VAR var <имя массива>:array[тип индекса] of <тип компоненты> Примеры: var A : array [0..5] of string; D : array [1..17] of real; S : array [‘A’..’Z’] of integer;
Ввод и вывод элементов массива Производится поэлементно. Обычно используется цикл с параметром, где в качестве параметра используется индексная переменная. Пример: {заполнение массивов} for i:=1 to 10 do begin write (‘A[‘,i, ‘]=‘); readln (A[i]) end; B [1] = 9.8; B[3] = -7,23; {вывод элементов} for i:=1 to 10 do write (‘A[‘,i, ‘]=‘, A[i]);
Решить задачу Заполнить случайными числами из диапазона [0, 100] вещественный одномерный массив из N чисел. Найти максимальное значение и его индекс. Посчитать сколько раз менялся максимальный элемент Пример: 1)max=2.5, Kmax=1, T=1 2)max=28.6, Kmax=2, T=2 3)max=59.2, Kmax=3, T=3 4)max=59.2, Kmax=3, T=3 5)max=63.1, Kmax=5, T=4
Решение задачи program MAX; var X:array[1..N] of real; max: real; Kmax, i, T : integer; begin write(‘N’); readln (N); for i:=1 to N do X[i]:=random*100; max:=X[1]; Kmax:=1; T:=1; for i:=2 to N do if X[i]>max then begin max:=X[i]; Kmax:=I , T:=T+1 end; writeln (‘Максимальный элемент и номер:’, ‘X[’,Kmax,’]=’,max, ‘замен:’, T) end.
Задача Дан целочисленный массив. Отсортировать его элементы в порядке возрастания значений.
Метод пузырька Дан массив А (8, 4, 7, 6)
Решение задачи program sort; var A:array[1..100] of integer; N, I, J, P: integer; begin write(‘Введите N’); readln (N); for I:=1 to N do begin write (‘A[‘,I, ‘]=‘); readln (A[I]) end; for I:=1 to N-1 do begin for J:=1 to N-1 do if A[I]>=A[I+1] then begin P:=A[J]; A[J]:=A[J+1]; A[J+1]:=P end end; for I:=1 to 10 do write (‘A[‘,I, ‘]=‘, A[I]) end.