
- •Программирование на языке Turbo Pascal Материалы к урокам
- •Тема №1: этапы решения задач на эвм. Алгоритмизация. Основные понятия. Блок-схемы.
- •Свойства алгоритма
- •Элементы блок-схемы
- •Тема №2: работа в среде turbo-pascal. Транслятор. Набор текста программы. Справочная система. Выполнение и отладка программы.
- •Основные понятия:
- •Встроенные стандартные математические функции, используемые в Turbo Pascal.
- •Переменные. Описание переменных.
- •Тип переменных указывается после списка переменных через двоеточие (: ). Числовые переменные можно описать по-разному, в зависимости от вида (целые, вещественные) и значности чисел:
- •Простейшие операторы работы в текстовом режиме.
- •Нестандартный оператор очистки экрана:
- •Операторы ввода данных в переменные с клавиатуры:
- •Оператор ожидания нажатия на клавишу.
- •Целочисленные арифметические операции:
- •Функции, преобразования числовых переменных:
- •Получение случайных чисел.
- •Тема №4: программирование на языке turbo-pascal. Прорядковые типы данных. Ветвление. Операторы условного и безусловного перехода. Составление программ с использование ветвления и переходов.
- •Порядковые типы переменных (дополнительные сведения)
- •Функции, используемые для работы с порядковыми переменными.
- •Условный оператор (выбор одного из двух направлений)
- •Оператор 1, оператор 2 – какой либо оператор, в том числе и составной оператор, т.Е. Несколько операторов, объединенных операторными скобками begin end.
- •Ветвление на несколько направлений (оператор – переключатель, или оператор выбора или оператор варианта):
- •Операторы безусловного перехода goto и halt:
- •Тема №5: программирование на языке turbo-pascal. Организация циклов. Операторы циклов. Составление программ с использование операторов цикла.
- •Оператор цикла с параметром.
- •Цикл с предварительным условием
- •Цикл с последующим условием
- •Особенности и отличия операторов цикла
- •Примеры программ
- •Ответить на вопросы
- •Тема №6: программирование на языке turbo-pascal. Процедуры. Функции. Составление программ с использование процедур и функций. Рекурсия.
- •Тема №7: программирование на языке turbo-pascal. Основные графические операции языка turbo pascal. Составление программ с использование операторов графики.
- •Примеры программ:
- •Составить программу Абстракция, которая выводит на экран всевозможные графические фигуры.
- •Тема №8: программирование на языке turbo-pascal. Массивы, одномерные и вдухмерные. Составление программ с использованием массивов.
- •Задача MaxMin. Программа для поиска максимального и минимального элемента массива, с указанием их номеров (maxmin.Pas).
- •Сортировка массивов
- •Сортировка методом «пузырька»
- •Сортировка методом выбора
- •Поиск элемента в упорядоченном массиве
- •Тема №9: данные типа strung.
- •Тема №8: файлы. Типизированные файлы. Текстовые файлы.
- •Пример записи в текстовый файл:
- •Приложение 1. Структура типов данных
- •Приложение 2. Таблица кодов ascii
- •Назначение некоторых кодов ascii
- •Приложение 3. Расширенные ascii –коды клавиш
- •Приложение 4. Кодировка символов по модифицированной альтернативной кодировке символов госта (десятичный код-символ)
- •Содердание
Тема №8: файлы. Типизированные файлы. Текстовые файлы.
ПРОГРАММНО - ДИДАКТИЧЕСКОЕ ОБЕСПЕЧЕНИЕ: ЭВМ типа IBM. ТР5.
ЦЕЛИ И ЗАДАЧИ: Дать представление о файлах и средствах их обработки с помощью ТР5. Приобретение навыков составления программ с использованием файлов различного типа
ТРЕБОВАНИЯ К ЗНАНИЯМ И УМЕНИЯМ:
Учащиеся должны знать:
Что такое файл;
Какие бывают файлы;
Что такое файловая переменная;
Как описываются типизированные файлы;
Процедуры и функции работы с файлами;
Процедуры и функции работы с типизированными и текстовыми файлами;
Как описываются текстовые файлы.
Учащиеся должны уметь:
Правильно описывать типизированные и текстовые файлы;
Правильно пользоваться файловой переменной;
Составлять программы с использованием типизированных и текстовых файлов;
Составлять простейшие программы с использованием процедур и функций работы с типизированными и текстовыми файлами.
ПЛАН-СОДЕРЖАНИЕ УРОКА
Основные понятия
Мы все время рассматривали задачи, в которых данные поступают с клавиатуры, а результаты выводятся на экран. Ни исходные данные, ни результаты не сохраняются. А если данных слишком много? Как записать их на диск? Для этого необходимо исходные данные и результаты оформить в виде файлов, которые хранятся на диске.
Файлы – это поименованная структура данных на техническом носителе, представляющая собой последовательность элементов (записей) одного типа или - это массив переменной длины неограниченного размера.
Файл может быть компонентом другой структуры, но не должен входить в другой файл.
Отличие файла от массива: размещение на внешнем носителе, длина файла не задается, место элемента не определяется индексом.
Файлы бывают:
типизированные
нетипизированные
текстовые
Файл объявляется в разделе описания переменных с указанием типа элементов файла.
Например:
Var F1: file of integer; F2: file of char; F3: text; F4: file;
Типизированными файлами называются файлы, в описании которых присутствует указание типа. Типизированные файлы – это файлы с прямым доступом к компонентам (записям).
Нетипизированный файл – это просто последовательность байтов, без конкретизации структуры.
Файл, компонентами которого являются данные символьного типа, называется текстовым. Отличие текстовых файлов от типизированных - наличие строковой структуры. В текстовые файлы можно записывать любую информацию, в том числе числа. При этом они (числа) автоматически преобразуются в строковые величины, а при считывании из файла – обратное преобразование в числа.
Описание файлов:
-
Тип файла
Описание файла
Типизированный
Var F1: file of integer;
F2: file of char;
Нетипизированный
Var F3: file;
Текстовый
Var F: text;
Файл на техническом носителе определяется полным именем (<путь>\<собственно имя>.<расширение>). Для обозначения файла и работе с ним в программе используется файловая переменная.
Файловая переменная - это переменная, используемая в программах для обозначения файла и обращения к нему. Она не может использоваться как обычная переменная (слева от знака присваивания, в логических и арифметических выражениях).
Особенности файловой переменной:
Ей нельзя присваивать какие-либо значения
Она не может участвовать в логических операциях
Она не может входить в математические выражения
При работе с файлом используется понятие указателя или индекса файла, т.е. положение магнитной головки в определенном месте файла. Перед началом работы файл должен быть создан или открыт, по окончании работы – закрыт.
При работе с файловыми переменными, используются специальные процедуры и функции:
Процедура |
Назначение |
Замечание |
Assign(f, ‘name’) |
Связывает файловую переменную с конкретным файлом (привязывает переменную к имени файла). Ставится перед первым использованием файловой переменной. |
Можно имя файла ’name’ задавать через строковую переменную (S): Assign(f, S) |
Reset(f) |
Открывает существующий файл и устанавливает указатель на начало записи. |
Для любых файлов |
Rewrite(f) |
Создает новый пустой файл, устанавливает указатель - на начало файла. Если файл существовал, то его содержимое уничтожается. |
Для любых файлов |
Close(f) |
Закрывает открытый файл |
Для любых файлов |
Erase(f) |
Стирает предварительно закрытый файл |
Для любых файлов |
Rename(f, f1) |
Переименовывает файл f в файл f1. Файл f должен быть предварительно закрыт |
Для любых файлов |
EOF(f) |
Получение сведений о конце файла True, если указатель указывает на метку конца файла, иначе - False |
Логическая функция. |
Read(f,v1,…vn) |
Считывает записи из файла f в переменные v1, …vn |
Для типизированных и нетипизированных файлов |
Write(f,v1,…vn) |
Записывает в файл f значения переменных v1,…vn |
Для типизированных и нетипизированных файлов |
Readln(f,v1,…vn) |
Считывает записи из файла f в переменные v1, …vn |
в типизированных файлах недопустимо |
Writeln(f,v1,…vn) |
Записывает в файл f значения переменных v1,…vn |
в типизированных файлах недопустимо |
N:=filesize(F); |
Определение количества записей в файле |
Функция |
Eoln(f) |
True, если указатель на метке конца строки, иначе - False |
Логическая функция. Для текстовых файлов |
Append(f) |
Открывает файл и устанавливает указатель на метку конца файла |
Применяется для добавления записей |
N:=filepos(f) |
Выдает номер записи, на которую указывает указатель записи. Первая запись имеет номер 0. |
Функция |
seek(f,n) |
Устанавливает указатель на запись с номером n |
|
truncate(f) |
Отсекает все записи, находящиеся после указателя и в этой позиции записывает метку конца файла. |
|
Пимеры программ:
Пример записи типизированных файлов:
var f: filt of integer;
assign(f, ‘file’); … rewrite(f); …write(f, v1,v2,…, vn); clos(f);
Пример считывания типизированных файлов:
var f: filt of integer;
assign(f, ‘file’); … reset(f); … read(f, v1,v2,…, vn); clos(f);