- •Введение Алгоритмизация
- •Автоматизация математических вычислений на компьютере
- •Лабораторная работа № 1. Программирование последовательных вычислений Элементы языка Pascal
- •Операции и функции в языке Pascal
- •Порядок выполнения
- •Примеры программ на языке Pascal
- •Дополнительное задание
- •Контрольные вопросы
- •Лабораторная работа № 2. Программирование разветвлений Алгоритм линейной структуры
- •Алгоритм разветвляющейся структуры
- •Порядок выполнения
- •Примеры задач
- •Дополнительное задание
- •Контрольные вопросы
- •Лабораторная работа № 3. Программирование циклов Алгоритм циклической структуры
- •Порядок выполнения
- •Примеры задач
- •Дополнительное задание
- •Контрольные вопросы
- •Лабораторная работа № 4. Программирование задач с одномерными массивами Одномерные массивы
- •Порядок выполнения
- •Пример задачи
- •Дополнительное задание
- •Фрагменты вычисления характеристик одномерного массива
- •Фрагменты операций с одномерными массивами
- •Контрольные вопросы
- •Лабораторная работа № 5. Программирование задач с двумерными массивами Двумерные массивы
- •Порядок выполнения
- •Пример задачи
- •Дополнительное задание
- •Фрагменты вычисления характеристик строк и столбцов двумерного массива
- •Фрагменты операций с двумерными массивами
- •Квадратные матрицы
- •Контрольные вопросы
- •Лабораторная работа № 6. Программирование процедур и функций Подпрограммы
- •Порядок выполнения
- •Дополнительное задание
- •Примеры задач
- •Контрольные вопросы
- •Лабораторная работа № 7. Программирование структурных типов данных Файлы
- •Порядок выполнения
- •Примеры задач
- •Дополнительное задание
- •Контрольные вопросы
Лабораторная работа № 7. Программирование структурных типов данных Файлы
Файлы– упорядоченные наборы данных различного типа, хранящиеся в памяти.
В языке Pascalфайлы бывают:
Текстовые (типа Text).
Типизированные (типа File of …).
Нетипизированные (типаFile).
Над текстовыми файлами обычно применяются следующие стандартные процедуры:
Assign(FP,F)– связывание файловой переменнойFPс именем файлаF.
Reset(FP)– открытие файла, связанного с файловой переменнойFP, для чтения.
ReWrite(FP)– открытие файла, связанного с файловой переменнойFP, для записи новых данных с удалением старых.
Append(FP)– открытие файла, связанного с файловой переменнойFP, для записи новых данных с добавлением к старым.
Close(FP)– закрытие файла, связанного с файловой переменнойFP.
Read(FP,P1,…)– ввод значений переменныхP1, … из файла, связанного с файловой переменнойFP.
ReadLn(FP,P1,…)– ввод значений переменныхP1, … из файла, связанного с файловой переменнойFP, и перевод указателя в файле на новую строку.
Write(FP,V1,…)– вывод значений выраженийV1, … в файл, связанный с файловой переменнойFP.
WriteLn(FP,V1,…)– вывод значений выраженийV1, … в файл, связанный с файловой переменнойFP, и перевод указателя в файле на новую строку.
Строки
Строка– упорядоченный набор символов в кавычках.
Описание строкив разделе описания переменных (Var) на языкеPascalимеет вид:
St : string [ NMax ];
где string– строка,St– имя строки, NMax– максимальное количество символов в строке.
Это означает, что переменная Stявляется строкой, которая может содержать от 1 до NMaxсимволов.
Записи
Запись– неупорядоченный набор величин разных типов, называемых полями.
Поле– именованная величина, являющаяся частью записи.
Описание записив разделе описания переменных (Var) на языкеPascalимеет вид:
Zap : record
SP1 : T1;
…
SPN : TN
end;
где record– запись,end– конец описания записи,Zap– имя записи, SP1– список полей 1-й,SPN– список полейN-й,T1– тип полей в 1-м списке,TN– тип полей вN-м списке.
Это означает, что переменная Zap является записью, включающей поля в списке SP1 типа T1 … поля в списке SPN типа TN.
Пример 1. Var
computer:record
nazv:string[10];
god:integer;
bystr:real;
end;
Это означает, что переменная computer– запись, включающая поляnazvстрокового типа,godцелочисленного типа,bystrвещественного типа.
Доступ к полю записиимеет вид:
Zap . Pole
где Zap– имя записи, Pole– имя поля.
Это означает доступ к полю Pole записи Zap.
Пример 2. computer.nazv
Это означает поле nazvзаписиcomputer.
Оператор присоединенияимеет вид:
with Zap do Op
где with– с, do– делать, Zap– имя записи, Op– оператор.
Это означает, что с полями записи Zap выполнять оператор Op.
Пример 3. Ввести поля записиcomputerбез использования оператора присоединения и с его использованием.
a) readln(computer.nazv,computer.god,computer.bystr);
б) with computer do readln(nazv,god,bystr);
Порядок выполнения
Зайти в Borland Pascal.
Создать новый файл, набрать в нём исходную матрицу Aи сохранить её в файлеLab7a.txt.
Набрать текст программы для решения задачи № 1 и выполнить программу.
Открыть файл Lab7c.txtи записать ответ.
Набрать текст программы для решения задачи № 2 и получить ответ для контрольного примера.