var
a: array [1..10] of real;
b: array[0..50] of integer;
c: array[-3..4] of boolean;
Объявление массива
b[17] := 123;
c[-2] := a[1]>a[2];
for k := 1 to 10 do a[k] := 0;
Обращение к элементу массива
var
a: array[1..3, –2..2, 1..5] of real;
или более компактная запись
Многомерные массивы
Можно передать все элементы одного массива другому массиву
var
a: array[1..5] of real;
b: array[1..5] of real;
...
a := b; {Здесь возникнет ошибка несоответствия типов}
Над массивами не определены операторы отношения
Пример: заполнить массив вещественными числами из отрезка [5;10]
2. Заполнение значениями
Статические массивы
Вариант 1 (используя Random(maxValue: integer): integer)
m[ 1] = 9.1
m[ 2] = 9.9
m[ 3] = 6.0
m[ 4] = 5.7
m[ 5] = 7.3
m[ 6] = 5.0
m[ 7] = 9.0
m[ 8] = 9.4
m[ 9] = 5.9
m[10] = 7.0
Статические массивы
2. Заполнение значениями
Вариант 2 (используя Random(a,b: integer): integer)
m[ 1] = 7.2
m[ 2] = 6.4
m[ 3] = 5.0
m[ 4] = 5.0
m[ 5] = 6.2
m[ 6] = 5.9
m[ 7] = 8.5
m[ 8] = 7.9
m[ 9] = 7.1
m[10] = 9.5
Статические массивы
2. Заполнение значениями
Вариант 3 (используя Random: real)
m[ 1] = 6.0
m[ 2] = 5.9
m[ 3] = 5.5
m[ 4] = 6.1
m[ 5] = 7.7
m[ 6] = 9.3
m[ 7] = 9.6
m[ 8] = 9.0
m[ 9] = 7.4
m[10] = 5.2
Статические массивы
2. Заполнение значениями
Статические массивы
2. Заполнение значениями
После объявления массива a
0 0 0 0
0 0 0 0
После заполнения массива a
0 9 1 4
2 7 5 5
Содержимое массива b
0 9 1 4
2 7 5 5
Статические массивы
3. Вычисления
Статические массивы
3. Вычисления
Пример: вычислить значение функции в точке заданной таблично
Пример: Найти и вывести самую длинную цепочку четных элементов массива
Пример: Найти точку на плоскости, ближайшую заданной
O(…) – вычислительная сложность «О-большое», значит не хуже чем …
Примеры:
O(1) – операция взятия значения по индексу
O(n) – поиск в массиве конкретного значения методом последовательного перебора
O(logN) – бинарный поиск
O(N^2) – поиск пары самых близко расположенных точек на плоскости
O(2^N), O(N!) – unreal
начало; поиск минимального элемента массива array из N элементов
min := array[1]
для i от 2 до N выполнять:
если array[i] < min
min := array[i]
конец; вернуть min
N – 1 операция присваивания счетчику цикла i нового значения;
N – 1 операция сравнения счетчика со значением N;
N – 1 операция сравнения элемента массива со значением min;
от 1 до N операций присваивания значения переменной min.
O(f(N)) = O(N-1+N-1+N-1+N +1) = O(4N-2) = O(N)
Типы сортировки:
внутренний (все элементы находятся в памяти машины);
внешний (часть в памяти, часть на внешних носителях);
устойчивая сортировка (не меняет относительный порядок сортируемых элементов, имеющих одинаковые ключи)
Основные характеристики:
время;
дополнительный объем памяти (без привлечения, с привлечением, необходимо копировать массив).
Статические массивы
6. Сортировка
Статические массивы
5. Сортировка
195 700 949 274 444 108 698
108 700 949 274 444 195 698
108 195 949 274 444 700 698
108 195 274 949 444 700 698
108 195 274 444 949 700 698
108 195 274 444 698 700 949
108 195 274 444 698 700 949
Статические массивы
5. Сортировка
Статические массивы
6. Сортировка
Статические массивы
5. Сортировка
Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:
Email: Нажмите что бы посмотреть