Линейные массивы

Содержание

Слайд 2

Описание типа «массив»

Массив – это структурированный тип данных, состоящий из фиксированного числа

Описание типа «массив» Массив – это структурированный тип данных, состоящий из фиксированного
элементов, имеющих один и тот же тип.
Название регулярный тип (или ряды) массивы получили за то, что в них объединены однотипные (логически однородные) элементы, упорядоченные по индексам, определяющим положение каждого элемента в массиве.
Тип элементов массива называется базовым.
В ЯПВУ Паскаль число элементов массива фиксируется при описании и в процессе выполнения программы не меняется.

Слайд 3

Общий вид описания массива

Описание массива определяет имя, размер массива и базовый

Общий вид описания массива Описание массива определяет имя, размер массива и базовый
тип.
массив является переменной величиной: Var <имя массива>: array [<тип индекса>] of <базовый тип>;
массив является постоянной величиной: Const n=10 ; {размер массива}
<имя массива>: array [<тип индекса>] of <базовый тип>=(значения элементов массива);
Чаще всего в качестве типа индекса используется интервальный целый тип.
Массивы могут быть одномерными, двумерными и многомерными.

Слайд 4

Примеры описания массивов:

Var b: array [0..5] of real;
r: array [1..34] of

Примеры описания массивов: Var b: array [0..5] of real; r: array [1..34]
char;
n: array [‘A’..’Z’] of integer;
Type Klass=(k1,k2,k3,k4);
Znak= array [1..255] of char;
Var Mas1: Znak;
M: array [1..4] of Klass;
Const n=5; M: array [1..n] of byte = (10, 5, 2, 56,198);

имя массива

размер массива

тип элементов массива

имя массива

тип элементов массива

размер массива

значения элементов массива

Слайд 5

Примеры описания массивов:

Если в качестве базового типа взят другой массив, образуется многомерный

Примеры описания массивов: Если в качестве базового типа взят другой массив, образуется
массив.

Примеры:
Type Vector = array [1..4] of integer;
Massiv = array [1..4] of Vector ;
Var Matr: Massiv ;

Ту же структуру можно получить, используя другую форму записи:
Var Matr: array [1..4, 1..4] of integer;
В данном случае формируется массив, состоящий из 4 строк и 4 столбцов.

Слайд 6

Линейный (одномерный) массив

это массив, у которого элементами являются простые переменные. В одномерных

Линейный (одномерный) массив это массив, у которого элементами являются простые переменные. В
массивах хранятся значения линейных таблиц.

Var a: array [1..4] of integer;

Слайд 7

Действия над элементами массива

Ввод и вывод;
Копирование массива;
Поиск элементов по некоторому условию;
Подсчет количества,

Действия над элементами массива Ввод и вывод; Копирование массива; Поиск элементов по
суммы и произведения;
Нахождение максимума (минимума) и их индексов;
Сдвиг, вставка Сдвиг, вставка и удаление;
Сортировка.

Слайд 8

I. Ввод и вывод массива

происходит поэлементно
Способы заполнения массива:
с клавиатуры;
случайными числами;
по правилу.

I. Ввод и вывод массива происходит поэлементно Способы заполнения массива: с клавиатуры; случайными числами; по правилу.

Слайд 9

Заполнение массива с клавиатуры

С использованием процедур ввода Read, Readln.

Реальный размер массива

Максимальный размер

Заполнение массива с клавиатуры С использованием процедур ввода Read, Readln. Реальный размер
массива

Номера элементов массива

ввод каждого элемента массива с новой строки

вывод массива в строку

вывод массива с пояснением

Слайд 10

Вид пользовательского экрана после выполнения программы

Вид пользовательского экрана после выполнения программы

Слайд 11

Заполнение массива случайными числами

Random(x) – функция вычисления случайного числа от 0 до

Заполнение массива случайными числами Random(x) – функция вычисления случайного числа от 0
Х .

генератор случайных чисел

массив формируется из случайных чисел от 0 до 99

Слайд 12

Вид пользовательского экрана после выполнения программы

Заполнение массива случайными числами из промежутка от

Вид пользовательского экрана после выполнения программы Заполнение массива случайными числами из промежутка
A до B. Тип элементов объявляется при описании массива.
Mas[i]:= random(B-A)+A
Примеры:
random(60+1)-20 случайные числа от -20 до 40
random(10+1)+70 случайные числа от 70 до 80

Слайд 13

Заполнение массива с помощью оператора присваивания (по правилу)

элемент массива в 3 раза

Заполнение массива с помощью оператора присваивания (по правилу) элемент массива в 3
больше своего номера

Задача. Заполнить массив А числами в 3 раза больше их порядкового номера.

Слайд 14

Вид пользовательского экрана после выполнения программы

В памяти формируется таблица А (количество элементов

Вид пользовательского экрана после выполнения программы В памяти формируется таблица А (количество элементов n=10 )
n=10 )

Слайд 15

II. Копирование элементов массива

Копированием массивов называется присваивание всех элементов одного массива всем

II. Копирование элементов массива Копированием массивов называется присваивание всех элементов одного массива
соответствующим элементам другого массива.

массив А копируется в массив В

Слайд 16

Вид пользовательского экрана после выполнения программы

Массив В является копией массива А:

Вид пользовательского экрана после выполнения программы Массив В является копией массива А:

Слайд 17

III. Поиск элементов по некоторому условию

Задача. Дан массив А, заполненный случайными числами

III. Поиск элементов по некоторому условию Задача. Дан массив А, заполненный случайными
из промежутка от 10 до 20. Сформировать новый массив B из номеров элементов массива А, меньших некоторого числа М.

Реальный размер массива А

Исходный массив

Конечный массив

Число М - критерий отбора элементов исходного массив

массив В не более массива А

Обнуление элементов массива В

Заполнение массива А случайными числами от 10 до 20

Начальное значение количества элементов, меньших M

Переход к следующему номеру

Заполнение массива В номерами элементов массива А, если они меньше числа М

Предположим, что элементов, меньше М в массиве А нет

Элемент, меньше М обнаружен

Если числа, меньше М обнаружены, то их номера выводятся на экран

Проверка на наличие в массиве А элементов, меньше М

В противном случае выводится сообщение об их отсутствии

Слайд 18

Вид пользовательского экрана после выполнения программы

1 запуск.

2 запуск.

Вид пользовательского экрана после выполнения программы 1 запуск. 2 запуск.

Слайд 19

IV. Подсчёт суммы, произведения и количества

Задача. В одномерном массиве найти:
сумму положительных элементов
произведение

IV. Подсчёт суммы, произведения и количества Задача. В одномерном массиве найти: сумму
отрицательных
количество четных элементов

Слайд 20

Заполнение массива случайными целыми числами от -50 до 50

Начальные значения суммы, произведения

Заполнение массива случайными целыми числами от -50 до 50 Начальные значения суммы,
и количества

Подсчёт суммы положительных элементов

Подсчёт произведения отрицательных элементов

Подсчёт количества чётных элементов

Вывод результатов на экран

Слайд 21

Вид пользовательского экрана после выполнения программы

Два запуска программы:

Вид пользовательского экрана после выполнения программы Два запуска программы:

Слайд 22

V. Нахождение максимального элемента и его номера

Предположим, что максимальный элемент находится

V. Нахождение максимального элемента и его номера Предположим, что максимальный элемент находится
на 1 позиции

Оформление массива на экране

Сравниваем текущее значение мах элемента с остальными элементами массива (со 2 до n)

Если значение максимального элемента оказалось меньше значения текущего элемента, то его значение заменяется значением просматриваемого элемента и номер фиксируется в величине imax

Слайд 23

Вид пользовательского экрана после выполнения программы

Вид пользовательского экрана после выполнения программы

Слайд 24

VI. Сдвиг и вставка числа в одномерный массив

Режим очистки экрана

Номер позиции, на

VI. Сдвиг и вставка числа в одномерный массив Режим очистки экрана Номер
которую вставляется элемент

Сдвиг элементов массива с последнего до k-го на 1 позицию вправо

Начальный размер массива

Конечный размер массива

Вставляемое число

Вставляем число С на позицию с номером k

Вывод конечного массива на экран

Слайд 25

Вид пользовательского экрана после выполнения программы

Вид пользовательского экрана после выполнения программы

Слайд 26

VI. Удаление элементов массива

с указанным номером
с указанным значением

VI. Удаление элементов массива с указанным номером с указанным значением

Слайд 27

Задача. В одномерном массиве удалить элемент с номером С.
Решение. Удаление указанного элемента

Задача. В одномерном массиве удалить элемент с номером С. Решение. Удаление указанного
происходит в результате сдвига элементов массива, начиная с номера С на 1 позицию влево.

Для С=2 сдвиг происходит следующим образом:

В итоге массив, уменьшается на 1 элемент

Слайд 28

Удаление элемента

Описание, заполнение и вывод на экран элементов массива

Сдвиг влево на 1

Удаление элемента Описание, заполнение и вывод на экран элементов массива Сдвиг влево
позицию

Вывод итогового массива на экран

Слайд 29

IV. Сортировка элементов одномерного массива

Сортировка – распределение элементов множества по группам в

IV. Сортировка элементов одномерного массива Сортировка – распределение элементов множества по группам
соответствии с определенными правилами. Часто используют сортировку элементов массива по возрастанию или по убыванию.
Сортировка методом «пузырька» предусматривает сравнение соседних элементов массива. Если они не упорядочены, то выполняется обмен значениями этих элементов. Таким образом упорядоченные элементы постепенно «всплывают».

Слайд 30

Блок-схема сортировки методом «пузырька»

Блок-схема сортировки методом «пузырька»

Слайд 31

Метод «пузырька»

просматриваем элементы с 1 до предпоследнего

i элементов упорядочено, граница цикла подвижная

сравниваем

Метод «пузырька» просматриваем элементы с 1 до предпоследнего i элементов упорядочено, граница
соседние элементы

если предыдущий элемент больше следующего, то их значения меняют местами

Р - буфер обмена

Имя файла: Линейные-массивы-.pptx
Количество просмотров: 444
Количество скачиваний: 4