ВВЕДЕНИЕ
Язык программирования Pascal был разработан в 1968-1971 гг. Никлаусом Виртом в Цюрихском Институте информатики (Швейцария). Первоначальная цель разработки языка диктовалась необходимостью инструмента «для обучения программированию как систематической дисциплине». Однако очень скоро обнаружилась чрезвычайная эффективность языка Pascal в самых разнообразных приложениях, от решения небольших задач численного характера до разработки сложных программных систем - компиляторов, баз данных, операционных систем и т.п.
К настоящему времени Pascal принадлежит к группе наиболее распространенных языков программирования. Существуют многочисленные реализации языка практически для всех машинных архитектур. Разработаны десятки диалектов и проблемно-ориентированных расширений языка Pascal. Обучение программированию и научно-технические публикации в значительной степени базируются на этом языке.
ПОСТАНОВКА ЗАДАЧИ
Пусть в файле Ш, компонентами которого являются объекты (записи) типа ученик, собраны сведения об учениках некоторой школы. Требуется вывести первую букву имени и фамилию каждого из учащихся указанного класса, следуя примеру:
Петров Игорь
Иванов Петр и т.д.
ТЕОРЕТИЧЕСКИЕ ОСНОВЫ
Типизированный файл - это файл, в котором содержатся однотипные данные. Типизированный файл задается с помощью 2-х ключевых слов «file of». После слова «of» указывается тип файла, например integer, real, char, string и т.д. Тип файла может быть любым за исключением файлового типа (не может быть файла файлов) и комбинированного типа, один из компонентов которого имеет файловый тип.
В отличие от текстовых файлов, в типизированном файле информация хранится в двоичном представлении (в текстовом файле информация хранится в виде цепочки символов). Данный факт позволяет производить чтение и запись в файл более быстрым способом, т.к. отсутствует необходимость в преобразовании данных. Кроме того, в типизированном файле возможен прямой доступ к записям файла (в текстовом файле возможен только последовательный доступ).
|
Любой файл имеет три характерные особенности. Во-первых, у него есть имя, что дает возможность программе работать одновременно с несколькими файлами. Во-вторых, он содержит компоненты одного типа. Типом компонентов может быть любой тип Паскаля, кроме файлов. Иными словами, нельзя создать «файл файлов». В-третьих, длина вновь создаваемого файла никак не оговаривается при его объявлении и ограничивается только емкостью устройств внешней памяти.
Описание файлового типа имеет синтаксис:
file of < тип элементов>;
Допустим, мы имеем дело с файлом, в котором записываются переменные типа Word, тогда переменная файлового типа может быть введена двояко: с явным объявлением файлового типа:
Type= file of word;
Var: WordFile;
или без объявления файлового типа:
Var: file of word;
В языке программирования Паскаль все действия с файлом (чтение, запись) производятся поэлементно.
Действия совершаются именно над тем элементом файла, на который указывает текущий указатель файла. После того как действие будет завершено, указатель перемещается к следующему элементу. Все элементы файла пронумерованы, начиная с нуля.
Операции с файловыми переменными включают:
|
· установочные и завершающие операции;
· ввод и вывод;
· перемещение по файлу;
· специальные операции.
Используется стандартная подпрограмма модуля CRT для очистки экрана - процедура ClrScr.
ОПИСАНИЕ ПРОГРАММЫ
Программа написана на алгоритмическом языке ПАСКАЛЬ и реализована в среде Borland Pascal 7.0, Windows XP, процессор Pentium.
Программа выполняет:
. Ввод записей, содержащих имя и фамилию ученика;
. Запись в файл полученных данных;
. Чтение данных из файла.
. Вывод данных в соответствии с условием задачи.
ОПИСАНИЕ ВХОДНЫХ И ВЫХОДНЫХ ДАННЫХ
uchenik - тип запись, содержит 2 поля:
fam - фамилия, поле типа string;
im - имя, поле типа string;
i - переменная, отвечающая за количество записей об учениках - переменная типа integer;
f - типизированный файл, содержащий записи типа uchenik;
uch1, uch2 - переменные типа uchenik;
im - переменная, хранящая первую букву имени - переменная типа string;
БЛОК-СХЕМА ПРОГРАММЫ
ТЕКСТ ПРОГРАММЫ
программирование pascal файл алгоритм
program a15;crt;=record: string[20];: string[10];;: integer;: file of uchenik;
uch1,uch2: uchenik;: string;
begin;(f,'a.dat');(f);i:=1 to 5 do('Vvedite dannye ', i, '-go uchenika');('Familiya: ');(uch1.fam);('Imya: ');(uch1.im);(f,uch1);;('Vvod zakonchen');;(f);('Vyvod dannyh.');(f,'a.dat');(f);not eof(f) do
read(f,uch2);:=Copy(uch2.im,1,1);('Familiya, imya: ',uch2.fam,' ',im,'.');
end;(f);;.
РЕЗУЛЬТАТЫВЫПОЛНЕНИЯ ПРОГРАММЫ
ЗАКЛЮЧЕНИЕ
В ходе выполнения контрольной работы были закреплены практические навыки в разработке программ на языке программирования Pascal (построение блок-схемы алгоритма программы, составление на его основе исходного текста программы, отладка программы в среде программирования Turbo Pascal 7.0, получение результата и анализ результатов работы программы).
|
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Абрамов С.А., Зима Е.В. Начала информатики. М., 1989.
. Вирт Н. Алгоритмы + структуры данных = программы. М., 1985.
. Джонс Ж., Харроу К. Решение задач в системе Турбо Паскаль. М., 1991.
. Мизрохи С.В. TURBO PASCAL и объектно-ориентированное программирование. М., 1992.
. Прайс Д. Программирование на языке Паскаль: Практическое руководство. М., 1987.
. Фаронов В.В. Турбо Паскаль 7.0. Начальный курс. Учебное пособие. М., 1997.
. Фирменная документация и компьютерные справочники (файлы помощи типа HELP).
. Система программирования Turbo Pascal. Е.А.Зуев, Москва, 1992.
. Turbo Pascal. С.А. Немнюгин, Санкт-Петербург, 2000
. Конспект лекций.