
- •Министерство образования и науки рф
- •Введение
- •Требования к оформлению отчета*
- •Задания к лабораторным работам.
- •Лабораторная работа 2. Методы численного интегрирования.
- •Указания и требования к выполнению работы.
- •Методы численного интегрирования
- •Лабораторная работа № 3. Расчет реактора смешения для сложной реакции с линейной кинетикой
- •Требования по выполнению работы:
- •Замечания по выполнению работы.
- •Реактор идеального смешения
- •Методы решения систем линейных алгебраических уравнений.
- •Метод Жордана-Гаусса (обращения матриц).
- •Итерационные методы.
- •Лабораторная работа № 4
- •4.1 Обработка экспериментальных данных по парожидкостному равновесию.
- •Обработка экспериментальных данных.
- •38 Метанол-ацетон-гептан
- •43 Метанол-ацетон-циклогексан
- •1. Интерполирование.
- •2. Метод наименьших квадратов
- •4.2. Расчет температуры кипения и точки росы трехкомпонентной смеси.
- •Методы уточнения корней уравнений с одним неизвестным.
- •Расчет производится по следующим
- •Лабораторная работа 5 Расчет реактора идеального вытеснения
- •Требования по выполнению работы:
- •Методы решения обыкновенных дифференциальных уравнений
- •Лабораторная работа № 6 Исследование функции, нахождение ее характерных точек и ее графическое изображение в трехмерных координатах.
- •Содержание
- •Приложение –1 – описание языка турбо паскаль версия № 7.0
- •1. Алфавит языка
- •1.1. Символы, используемые в идентификаторах
- •1.2. Разделители.
- •1.3.2. Знаки операций
- •1.3.3. Зарезервированные слова
- •1.4. Неиспользуемые символы
- •2. Структура программы
- •3. Типы данных
- •3.1. Классификация типов данных
- •3.2. Простые типы данных
- •3.2.3. Символьный тип
- •3.2.4. Перечисляемый тип
- •3.2.6. Вещественные типы
- •4. Выражения
- •4.1. Переменные
- •4.2 .Константы.
- •4.2.1. Целые константы
- •4.2.4. Константные выражения
- •4.2.5. Типизированные константы
- •4.3. Стандартные функции
- •4.3.1. Арифметические функции
- •4.3.2. Функции преобразования типа
- •4.3.3. Функции для величин порядкового типа
- •4.4. Знаки операций
- •4.4.1. Арифметические операции
- •4.4.2. Логические операции
- •4.4.3. Операции с битами информации
- •4.4.4. Операции отношения
- •4.5. Круглые скобки
- •4.6. Порядок вычисления выражений
- •5. Операторы языка
- •5.1. Простые операторы
- •5.1.1. Оператор присваивания
- •5.1.2. Оператор безусловного перехода gото. Использование меток
- •5.1.3. Пустой оператор
- •5.2. Структурированные операторы
- •5.2.1. Составной оператор
- •5.2.2. Условный оператор if
- •5.2.3. Условный оператор саsе
- •5.2.4. Оператор цикла repeat
- •5.2.5. Оператор цикла while
- •5.2.6. Оператор цикла for
- •5.2.7. Использование стандартных процедур Break и Соntinue в операторах циклов repeat, while и for
- •6. Структурированные типы данных
- •6.1. Массив
- •6.2. Строка типа string
- •6.3. Аsciiz-строка
- •6.4. Запись
- •6.5. Множество
- •6.6. Файл
- •7 Динамические структуры — данных
- •7.1. Указатель
- •7.2. Работа с динамической памятью
- •7.3. Работа со структурами данных
- •8. Процедурные типы
- •9. Совместимость и преобразование типов данных
- •10 Процедуры и функции
- •10.1. Процедура
- •10.2. Функция
- •10.3. Формальные и фактические параметры
- •10.3.1 Параметры-значения
- •10.3.2. Параметры-переменные
- •10.3.3. Параметры-константы
- •10.3.4. Параметры без типа
- •10.3.5. Массивы и строки открытого типа
- •10.3.6. Параметры-процедуры и параметры-функции
- •10.4. Процедура еxit
- •10.5. Директивы подпрограмм
- •10.5.1. Директива forward
- •10.5.2. Директивы fаr и near
- •10.5.3. Директива ехтеrnal
- •10.5.4. Директива аssembler
- •Пример. Функция, определяющая максимальное из двух чисел
- •10.5.5. Директива inline
- •10.5.6. Директива interrupt
- •10.6. Рекурсивные процедуры и функции
- •11 Организация ввода-вывода
- •11.1. Стандартные процедуры и функции для всех файлов
- •Функции
- •11.2. Стандартные процедуры и функции для текстовых файлов
- •11.3. Стандартные процедуры и функции для типизированных файлов
- •Осуществляется настройка на элемент файла, с которым связана файловая переменная f. Элемент файла определяется номером №, причем нумерация элементов начинается с нуля.
- •11.4. Стандартные процедуры и функции для файлов без типа
- •11.5. Внешние устройства в качестве файлов
- •12 Объектно-ориентированное программирование в turbo pascal 7.0
- •12.1. Пример использования ооп
- •12.2. Понятие объекта
- •12.2.2. Наследование
- •12.2.3. Полиморфизм
- •12.3. Виртуальные методы
- •13 Модули
- •13.1. Заголовок модуля
- •13.2. Интерфейс модуля
- •13.3. Исполнительная часть модуля
- •13.4. Секция инициализации
- •13.5. Использование модуля в основной программе
- •13.6. Использование идентификаторов элементов модуля
- •14 Стандартные модули
- •14.1 Модуль System
- •Арифметические функции
- •Процедуры работы со строками
- •Функции работы со строками
- •Функции управления вводом-выводом
- •Процедуры управления вводом-выводом
- •Функции управления динамической памятью и адресные функции
- •Include Включение элементов множества
- •14.2. Модуль String
- •14.3. Модуль Сrt
- •C80 с080 Для совместимости с версией 3.0
- •14.4. Модуль Graph
- •14.4. Пример использования подпрограмм модуля Сrарh
6.4. Запись
Тип-запись включает ряд компонент, называемых полями, которые могу быть разных типов. При задании типа-записи после зарезервированного слова record следует перечислять все поля типа-записи с указанием через двоеточие их типов и завершить задание типа словом еnd. Поля отделяются друг от друга точкой с запятой. Количество полей записи может быть любым. Пример.
type
Соmplех = rесоrd {Тип комплексных чисел}
Rе: Rеаl;
Im: Rеаl
end;
Data = rесоrd {Тип—дата рождения}
Уеаr: Integer;
Моnth: 1..12;
Dау: 1..31
end;
Реrsоn = rесоrd {Тип— сведения о сотрудники}
Nаmе: string[20];
Sех: (Malе, Fеmalе);
Аgе: Integer;
Маrried: Вoоlеаn
еnd;
Примечание, Если, несколько полей типа-записи, имеют, один и том же тип, то их имена можно перечислить через запятую и затем указать этот общий тип. Так, рассмотренный в примере тип комплексных чисел можно ввести и другим образом:
tуре
Соmplex = rесоrd
Re, Im: Rеаl
end;
После введения типа-записи можно затем задать переменные или типизированные константы этого типа - записи.
При задании значений константе ее поля записываются в круглых скобках через точку с запятой. Для задания значения каждого поля сначала указывается имя поля, а затем через двоеточие - его значение.
Так, для введенных выше типов можно задать, например, следующие переменные и константы:
var
X. У, Z: Соmрlех;
Dat: Data;
соnst
Birthday: Data =(Уеаг: 1971; Моnth: 12; Day: 9);
Ivanov: Реrson =(Name: ‘Иванов’; Sех: Маle; Аgе: 40; Маrried: Тruе);
Примечание. Тип-запись можно вводить и непосредственно при определении переменных или типизированных констант. Например, фрагмент
vаr.
X. У, Z: rесord
Re, Im: Rеаl
еnd;
определяет те же комплексные переменные, что и в предыдущем примере.
Доступ к полям записи осуществляется указанием имени переменной (константы) и имени поля, записываемого через точку, например:
Ivanov.Аgе,
Х.Rе,
Dat.Dау и т. д.
Пример. Использование полей записей.
Х.Rе = 1.5;
Х.Im = 1.7;
У.Rе := -Х.Re;
У.Im := -Х.Im;
Ivаnov.Маrried := Fаlsе;
Для того чтобы не выписывать каждый раз имя записи при обращении к ее полям, можно использовать оператор над записями WITH. Его структура выглядят следующим образом: with <имя записи> do <оператор>;
В этом случае внутри оператора можно указывать только поле записи. Например. фрагмент:
with X do
begin
Re:=1.5;
Im = 1.7;
Rе := -Re;
Im := -Im;
end;
with Ivanov do
Маrried := Fаlsе; эквивалентен фрагменту из предыдущего примера.
Тип-запись может иметь вариантную часть, изменяющуюся при разных реализациях, например, в типе-записи параметров геометрических фигур для квадрата задается сторона, для треугольника - две стороны и угол мехду ними, для окружности - радиус и т. д. Вариантная часть может быть только одна и должна располагаться в конце записи.
Пример. Использование вариантной части
tуре
Figure = (Square, Triangle, Circle);
Раrаm = rесоrd
X,У: Rеа1; {точка привязки}
Case Fig: Figure of {параметры фигур}
Square: (Side:Rеаl);
Тriangle: (Side1, Side2, Аngle: Rеаl);
Сircle: (Rаdius: Rеа1)
end;
vаг МуSquare, МуСirclе: Раrаm;
Вариантная часть начинается словом саsе, за которым следует переменная выбора варианта (в примере Fig) с указанием типа. Далее указываются константы, значения которых может принимать переменная выбора варианта (в примере - Square, Triangle, Circle). За каждой константой через двоеточие в круглых скобках записываются поля данного варианта записи с указанием их типов. Круглые скобки необходимы, даже если для данного варианта вариантная часть отсутствует. Следует отметить, что вариантная часть не завершается своей операторной скобкой еnd, как у обычной конструкции САSЕ, т. к, далее идет завершающая операторная скобка еnd всего типа.
В стандарте языка Паскаль перед тем, как использовать один из вариантов записи, переменной выбора варианта необходимо присвоить соответствующее значение:
Fig :=Square;
МуSquare.Sidе : 5.0;
Fig := Сircle; .
МуСircle.Rаdius := 7.5;
В Тurbo Pascal эту операцию делать необязательно, хотя, если переменная выбора задана, ее затем можно в программе посмотреть, чтобы определить, какой задан вариант. Более того, задание значения переменной выбора ни на что к оказывает влияния, и следующий фрагмент эквивалентен рассмотренному выше:
Fig :=Circle;
МуSquare.Sidе : 5.0;
Fig := Square; .
МуСircle.Rаdius := 7.5;
В тип-записи допустимо не вводить переменную выбора вариантов, а перечислить лишь разные варианты, например:
Тransf = rесоrd
Саsе Integer: of
1: (_Wоrd: Wоrd);
2: (_ТwoSymb: аrrау[1..2] оf Сhаr)
еnd;