- •Основы алгоритмизации и программирования
- •Введение
- •1.1. Структура программы
- •1.2. Типы данных
- •1.2.1. Целый тип данных
- •1.2.2. Логические типы данных – Boolean
- •1.2.3. Данные символьного типа
- •1.3. Операторы языка программирования Турбо Паскаль
- •1.3.1. Операции в Турбо Паскаль
- •1.3.2. Правила вычисления выражений
- •1.3.3. Встроенные функции в Турбо Паскаль
- •1.3.4. Описание констант и переменных
- •1.3.5. Операторы в Турбо Паскаль
- •Вопросы для самопроверки
- •Лабораторная работа №1 Организация программ линейных структур
- •Варианты заданий
- •2. Организация форматного вывода данных на языке Паскаль
- •Вопросы для самопроверки
- •Лабораторная работа №2 Организация ввода-вывода данных на языке Паскаль
- •Методические указания
- •Варианты задания
- •3. Организация программ разветвляющихся структур
- •3.1. Полная форма условного оператора
- •3.2. Краткая форма условного оператора
- •Вопросы для самопроверки
- •Лабораторная работа №3 Организация программ разветвляющихся структур
- •Варианты заданий
- •4. Организация циклических процессов
- •Лабораторная работа №4 Составление циклических программ
- •Варианты заданий
- •Методические указания
- •Варианты заданий
- •5. Программирование структур с вложенными циклами
- •Вопросы для самопроверки
- •Лабораторная работа №5 программирование структур с вложенными циклами. Вычисление суммы ряда
- •Методические указания
- •Варианты заданий
- •6. Перечислимые и ограниченные типы данных
- •6.1 Перечислимый тип данных
- •6.2. Ограниченный тип данных
- •6.3. Оператор выбора (варианта)
- •Вопросы для самопроверки
- •Лабораторная работа №6 Перечислимые и ограниченные типы данных
- •Варианты заданий.
- •7. Регулярные типы данных
- •7.1. Одномерные массивы
- •7.1.1. Краткая форма объявления одномерного массива
- •7.1.2. Полная форма объявления одномерного массива
- •7.1.3. Доступ к элементам массива
- •Вопросы для самопроверки
- •Лабораторная работа №7_1 регулярные типы данных. Массивы
- •Варианты заданий
- •7.2. Двумерные массивы
- •Полная форма описания матрицы:
- •Формирование элементов случайным образом:
- •Формирование элементов матрицы при вводе с клавиатуры:
- •Фрагменты программ по обработке 2-х мерных массивов
- •Вопросы для самопроверки
- •Лабораторная работа №7_2 регулярные типы данных. МАтрицы
- •Варианты заданий
- •7.3. Сортировка элементов массива
- •7.3.1. Сортировка методом «пузырька»
- •7.3.2. Сортировка вставками
- •7.3.3. Сортировка посредством выбора
- •7.3.4. Быстрая сортировка
- •8. Составление программ с использованием подпрограмм
- •8.1. Область видимости идентификатора переменной
- •8.2. Подпрограммы - процедуры (procedure)
- •8.2.1. Формальные и фактические параметры
- •Вопросы для самопроверки
- •Лабораторная работа №8_1 составление программ с использованием подпрограмм - процедур
- •Методические указания
- •Варианты заданий
- •8.3. Подпрограммы-функции (function)
- •Вопросы для самопроверки
- •Лабораторная работа №8_2 составление программ с использованием подпрограмм - функций
- •Варианты заданий
- •8.4. Рекурсия
- •8.4.1. Вычисление факториала
- •8.4.2. Формы рекурсивных процедур
- •8.4.3. Числа Фибоначчи
- •Вопросы для самопроверки
- •9. Модули
- •Структура модуля
- •Interface
- •Implementation
- •Вопросы для самопроверки
- •10.2. Стандартные процедуры и функции для строк
- •10.3. Хранение строк
- •Вопросы для самопроверки
- •Лабораторная работа №10 обработка символьной информации
- •Варианты заданий
- •11. Комбинированные типы. Записи (Record)
- •11.1 Записи с фиксированными частями
- •11.2. Оператор with…do
- •11.3. Вариантные записи
- •Вопросы для самопроверки
- •Лабораторная работа №11 Комбинированные типы. Записи
- •Варианты заданий
- •12. Файлы
- •12.1. Классификация файлов
- •12.1.1. Чтение файла
- •12.1.2. Запись файла
- •Вопросы для самопроверки
- •13.1. Объявление множества
- •13.2. Операции над множествами
- •13.3. Сравнение множеств
- •Include (s, I);
- •13.4. Старшинство множественных операций
- •Вопросы для самопроверки
- •Лабораторная работа №13 множества
- •Варианты заданий
- •Горячие клавиши
- •Библиографический список
- •Оглавление Введение 3
- •1. Программирование на языке Паскаль 5
- •1.1. Структура программы 5
- •2. Организация форматного вывода данных на языке Паскаль 17
- •Лабораторная работа №7_1.
- •Лабораторная работа №7_2.
- •Лабораторная работа №8_2.
Варианты заданий
№ |
Ряд |
Контрольная формула |
1 | ||
2 |
| |
3 |
sinx – cosx + 1 | |
4 | ||
5 | ||
6 | ||
7 | ||
8 | ||
9 | ||
10 | ||
11 | ||
12 | ||
13 | ||
14 | ||
15 | ||
16 | ||
17 | ||
18 | ||
19 | ||
20 | ||
21 | ||
22 | ||
23 | ||
24 | ||
25 | ||
26 | ||
27 | ||
28 | ||
29 | ||
30 |
6. Перечислимые и ограниченные типы данных
6.1 Перечислимый тип данных
Перечислимый тип данных задаётся списком констант (объектов), которые могут принимать переменные этого типа. Каждый объект имеет своё имя. Числа, логические и символьные константы не могут являться объектами перечислимых типов. Применение перечислимого типа повышает наглядность программы и даёт возможность автоматически контролировать допустимость значений переменных. Перечислимый тип задаётся в виде перечисления в строго определённом порядке и строго ограниченном количестве всех значений, которые могут принимать данные рассматриваемого типа.
Описание перечисляемого типа имеет вид:
TYPE<имя_типа> = (список констант);
VAR<имя_пер> : <имя_типа>;
Например.
TYPE
DAY = (MO, TU, WE, TH, FR, SA, SU);
VAR
D1,D2,D3 :DAY;
Переменные D1, D2, D3 типа DAY при выполнении программы могут принимать только одно из семи указанных значений.
Для перечисляемого типа данных существенен порядок указанных объектов, каждая константа имеет свой порядковый номер, счёт начинается с нуля. Упорядоченность констант позволяет применять к ним операции отношения, а также функции PRED, SUCC, ORD, имеющих тот же смысл, что и для стандартных скалярных типов.
Например,
TYPE
COLOR = (RED, BLUE, BLACK);
VAR
C1, C2, C3 : COLOR;
Результатом функции SUCC(RED) является значение BLUE, PRED(BLACK)=BLUE, ORD(BLUE)=1.
Примечание. Непосредственно вводить и выводить на внешние устройства значения перечисляемых типов в языке Паскаль недопустимо.
6.2. Ограниченный тип данных
Множество значений стандартных скалярных типов данных и перечисляемых скалярных типов упорядочено и конечно (кроме вещественного типа).
Если необходимо сузить диапазон значений, принимаемых некоторым объектом скалярного типа, то осуществляется это наложением ограничений на стандартный или перечислимый скалярный тип, называемый в данном случае базовым.
Описание ограниченного типа имеет вид:
TYPE <имя_типа> = константа..константа;
Обе граничные константы должны быть одного типа, в качестве базового типа можно использовать любой простой тип, кроме действительного (REAL). Начальное значение для определения ограниченного типа не должно быть больше конечного. Переменные ограниченного типа должны быть описаны в разделе переменных с помощью имён этих типов.
К переменным ограниченного типа применимы все операции и стандартные функции, допустимые при работе с переменными соответствующего базового скалярного типа.
Например.
TYPE DAY = (MO, TU, WE, TH, FR, SA, SU);
NOM = 10..25;
SSS = ‘C’..'X';
WD = FR..SU;
Для ограниченного типа NOM базовым является целый тип, для SSS – символьный, для WD – определённый ранее перечислимый тип DAY.
Из примера видно, что для определения ограниченного типа указываются начальное и конечное значения, которые может принимать константа базового типа на этом отрезке, разделённые двумя точками (..).