- •Оглавление
- •Этапы разработки программы
- •Оформление решения
- •Структура программы
- •Характеристики программы
- •Типы данных
- •Целые числа
- •Вещественные числа
- •Лабораторная работа № 2 Алфавит языка Паскаль. Операторы языка
- •Теоретические сведения Алфавит языка
- •Контрольные вопросы
- •Специальные символы
- •Составные символы
- •Зарезервированные слова
- •Стандартные функции и процедуры языка
- •Комментарии и директивы
- •Операторы
- •Простые операторы
- •Структурные операторы
- •Полезные формулы
- •Запись числовых констант, переменных и выражений
- •Контрольные вопросы
- •Лабораторная работа № 3 Программирование алгоритмов линейной структуры
- •Теоретические сведения
- •Задание к работе
- •Пример выполнения работы
- •Варианты заданий
- •Задание 2
- •Вариант 1
- •Вариант 2
- •Вариант 3
- •Примеры задач Программа 1
- •Программа 2
- •Программа 3
- •Варианты заданий
- •Задание2
- •Примеры задач Программа 1
- •Программа 2
- •Программа 3
- •Варианты заданий
- •Алгоритм цикла с предусловием – While
- •Алгоритм цикла с постусловием Repeat
- •Алгоритм цикла со счетчиком For
- •Практические примеры Задачи с использованием оператора while
- •Задачи с использованием оператора repeat
- •Задачи с использованием оператора for
- •Варианты заданий
- •Контрольные вопросы
- •Лабораторная работа № 7 Программирование алгоритмов со структурой вложенных циклов
- •Теоретические сведения
- •Практические примеры
- •Задачи для решения
- •Лабораторная работа № 8 Обработка одномерных массивов
- •Теоретические сведения
- •Обработка массивов
- •Действия с одномерными массивами
- •Практические примеры
- •Варианты заданий
- •Контрольные вопросы
- •Что представляет собой массив в Pascal'е?
- •Лабораторная работа № 9 Обработка двумерных массивов, матрицы
- •Теоретические сведения
- •Описание массива
- •Заполнение массива данными (ввод элементов)
- •Вывод массива
- •Обработка массивов
- •Квадратная матрица
- •Транспонирование матрицы
- •Практические примеры
- •Варианты заданий
- •Сформировать матрицу по следующему правилу
- •Контрольные вопросы
- •1. Как можно описать следующий массив?
- •2. В какой ячейке находится элемент d[2,6] ?
- •3. Каким образом выведется массив на экран монитора?
- •4. Сколько элементов находится в массиве х(4;7):
- •Метод линейной сортировки
- •Сортировка методом «пузырька»
- •Практические примеры
- •Варианты заданий
- •Практические примеры
- •Варианты заданий
- •Практические примеры
- •Шифрование и дешифрование текста
- •Варианты заданий
- •Контрольные вопросы
- •Порядок выполнения лабораторных работ
- •Содержание пояснительной записки
- •Литература
Контрольные вопросы
1. Как можно описать следующий массив?
-
3,14
0,2
-9,1
2,17
1,7
-0,25
-2,5
77
0
a: array[1..3,1..3] of real.
a: array[1..50,1..50] of real.
a: array[1..3,1..] of integer.
a: array[1..3,1..3] of byte.
2. В какой ячейке находится элемент d[2,6] ?
Во втором столбце и шестой строке.
Во второй строке и шестом столбце.
В строке с номером 2,6.
В столбце с номером 2,6.
3. Каким образом выведется массив на экран монитора?
for i:=1 to n do
begin
for j:=1 to m do
write (a[i, j]:3);
writeln;
end;
По столбцам.
По строкам.
По строкам и столбцам.
Ничего не выведется.
4. Сколько элементов находится в массиве х(4;7):
4.
7.
11.
28.
Пустой массив.
Лабораторная работа № 10
Сортировка массивов
Цель работы – овладение практическими навыками сортировки массивов различными способами.
Теоретические сведения
Сортировка элементов массива
Сортировка один из наиболее распространенных процессов современной обработки данных. Сортировкой называется распределение элементов множества по группам в соответствии с определенными правилами. Например, сортировка элементов массива, в результате которой получается массив, каждый элемент которого, начиная со второго, не больше стоящего от него слева, называется сортировкой по не возрастанию.
Выделяют несколько методов сортировки:
линейная сортировка (сортировка отбором);
метод пузырька;
метод быстрой сортировки с разделением.
Метод линейной сортировки
Идея линейной сортировки по не возрастанию (убыванию) заключается в том, чтобы последовательно просматривая весь массив, отыскать наибольшее число и поместить его на первую позицию, обменяв его с элементом, который ранее занимал первую позицию. Затем просматриваются все остальные элементы массива, и выполняется аналогичная операция по отбору из рассматриваемой части массива максимального элемента и обмену местами этого элемента и первого в рассматриваемой части и т.д.
Фрагмент программы:
for i:=1 to n-1 do {Изменять размер неотсортированной части массива}
for j:=i+1 to n do {Сравниваем поочередно i-й элемент неотсортированной части массива
со всеми от i+1 – го элемента до конца}
begin
if a[i] < a[j ] then {Если в неотсортированной части массива нашли элемент,
больший, чем i-й , то обменять их местами}
begin
k:=a[i];
a[i]:= a[j];
a[j]:= k;
end;
end;
Сортировка методом «пузырька»
Один из самых популярных методов сортировки – «пузырьковый» метод основан на том, что в процессе исполнения алгоритма более «легкие» элементы массива постепенно «всплывают». Особенностью данного метода является сравнение не каждого элемента со всеми, а сравнение в парах соседних элементов. Алгоритм пузырьковой сортировки по убыванию состоит в последовательных просмотрах снизу вверх (от начала к концу) массива. Если соседние элементы таковы, что выполняется условие, согласно которому элемент справа больше элемента слева, то выполняется обмен значениями этих элементов.
Фрагмент программы:
for i:=2 to n do {Сортировка «пузырьковым» методом по невозрастанию}
for j:=n downto i do
begin
if a[j] < a[j+1 ] then {Если элемент справа больше элемента слева, т
о «вытеснить» его влево – пузырек «всплывет»}
begin
k:=a[j];
a[j]:= a[ j+1];
a[j+1]:= k;
end;
end;
