Типы данных языка Turbo Pascal. Файлы. Записи
Turbo Pascal как интегрированная среда разработки программного обеспечения для платформ DOS и Windows, язык программирования в этой среде, диалект языка Паскаль от фирмы Borland. Стандартные функции и процедуры для работы с типизированными файлами.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 08.09.2015 |
Размер файла | 35,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Типы данных языка Turbo Pascal. Файлы. Записи
Введение
В третьей части методических указаний рассматриваются типизированные, нетипизированные и текстовые файлы, стандартные процедуры и функции для работы с файлами, а также тип данных запись (record).
Файлы
Средства языка Turbo Pascal позволяют работать с файлами, что облегчает обработку данных: например, программа может обращаться к файлам, содержащим необходимые данные, а также записывать в файлы результаты обработки данных. Напомним, что под файлом понимается именованная область памяти компьютера (жесткого диска, дискеты), либо логическое устройство ? потенциальный источник или приемник информации. Длина файла ограничена только объемом памяти компьютера. Программа может обращаться к нескольким файлам одновременно.
Для обращения к файлу необходимо ввести переменную файлового типа. В процессе работы программы она будет связана с конкретным файлом или логическим устройством, с которым будет происходить обмен данными (см. ниже). Turbo Pascal позволяет работать с файлами трех видов (вид файла определяет способ хранения информации в нем).
1. Типизированные файлы ? содержат компоненты указанного типа, например, действительные числа. pascal типизированный файл
Описание типизированного файла:
type
<имя типа> = file of <тип компонентов>;
Примеры:
type
RealFile = file of real;
{Файл содержит действительные числа}
IntFile = file of integer;
{Компоненты файла - целые числа}
Text80 = file of string[80];
{Компоненты файла - строки длиной не более
80 символов}
var
f1: RealFile;
f2: IntFile;
f3: Text80;
Альтернативно, переменную файлового типа можно объявлять в программе без предварительного описания самого типа:
var
<имя переменной>: file of <тип компонентов>;
Примеры:
var
f4: file of byte;
f5: file of char;
2. Текстовые файлы ? определяются типом text.
Описание текстового файла:
type
<имя типа> = text;
Примеры:
type
TextFile = text;
var
t1: TextFile;
Альтернативно, файловую переменную можно объявлять в программе без предварительного описания типа text:
var
<имя переменной>: text;
3. Нетипизированные файлы ? определяются типом file.
Описание нетипизированного файла:
type
<имя типа> = file;
Примеры:
type
FileType = file;
var
t2: FileType;
Альтернативно, файловую переменную можно объявлять в программе без предварительного описания типа file:
var
<имя переменной>: file;
Файлы или логические устройства становятся доступными программе только после выполнения особой процедуры открытия файла. Исключение составляют ввод данных с клавиатуры и вывод на экран. При открытии файла ранее объявленная файловая переменная связывается с именем уже существующего или вновь создаваемого файла. Для этого служит стандартная процедура assign:
assign (<файловая переменная>,
<имя файла или логического устройства>);
Здесь <имя файла> ? выражение строкового типа; может содержать прописные и строчные латинские буквы, цифры, а также символы
! @ # $ % ^ & ( ) ' ~ - _
(всего не более 8 символов).
Имя файла начинается с любого из названных символов и может сопровождаться расширением ? последовательностью, состоящей не более чем из 3 допустимых символов, отделяющейся точкой от имени файла.
Перед именем файла может быть указан также путь к файлу, который может включать в себя имя диска и имя текущего каталога. Максимальная длина имени файла, включая путь и расширение ? 79 символов.
Стандартные имена логических устройств:
con |
клавиатура или экран дисплея (консоль). Использование этого логического имени позволяет осуществлять чтение данных с клавиатуры и вывод данных на экран. |
|
prn |
принтер. При подключении к компьютеру нескольких принтеров они получают логические имена lpt1, lpt2, lpt3, ... , причем prn и lpt1 по умолчанию считаются синонимами. Использование этих логических имен позволяет осуществлять вывод данных непосредственно на принтер. |
|
aux |
коммуникационный канал, используемый для связи компьютера с другими машинами. При наличии нескольких коммуникационных каналов они получают логические имена com1, com2, com3, ... , причем aux и com1 по умолчанию считаются синонимами. |
|
nul |
логическое имя "пустого" устройства (может использоваться при отладке программы). |
Перечисленные имена являются зарезервированными, т. е. нельзя, например, обратиться к файлу на жестком или гибком диске с логическим именем prn.
После связывания файловой переменной с именем файла с помощью процедуры assign, необходимо его инициировать, указать направление передачи данных ? открывается ли файл для чтения или для записи.
Файл открывается для чтения с помощью стандартной процедуры reset:
reset (<файловая переменная>);
Если делается попытка инициировать чтение из несуществующего файла или логического устройства prn, возникает ошибка ввода-вывода. Для контроля за ошибками ввода-вывода служит опция I/O CHECKING (меню OPTIONS ? COMPILER ? RUNTIME ERRORS ? I/O CHECKING). В активном состоянии она позволяет контролировать правильность операций ввода-вывода. Существуют также директивы компилятора, которые позволяют включать (директива {$I+}) и отключать (директива {$I-}) контроль правильности операций ввода-вывода.
В случае типизированных файлов к файлу, открытому с помощью процедуры reset, можно обращаться не только для чтения, но и для записи информации (т. е. использовать процедуры write/writeln). Для текстовых файлов, открытых с помощью процедуры reset, процедуры write/writeln использовать нельзя.
Файл открывается для записи с помощью стандартной процедуры rewrite:
rewrite (<файловая переменная>);
Если файл, открытый с помощью процедуры rewrite, уже существовал ранее (т. е. файловая переменная была связана с именем уже существующего файла при выполнении процедуры assign), при выполнении процедуры rewrite старый файл с указанным именем уничтожается, и к приему информации подготавливается новый, пока еще пустой файл, указатель файла устанавливается в 0.
Для того, чтобы добавить записи в конец уже существующего файла, не уничтожая его, служит процедура append:
append (<файловая переменная>);
Процедура append применима только к текстовым файлам (т. е. файловая переменная должна иметь тип text). Процедура append инициирует запись информации в ранее существовавший текстовой файл, указатель файла устанавливается в его конец. Если текстовой файл ранее уже был открыт с помощью процедур reset или rewrite, использование процедуры append приводит к закрытию этого файла и открытию его вновь, но уже для добавления записей.
Стандартные процедуры для работы с файлами любого типа:
close (<файловая переменная>) |
||
закрывает файл, обеспечивая сохранение в файле всех новых записей и регистрацию файла в каталоге. Связь файловой переменной с именем файла, установленная ранее процедурой assign, сохраняется, поэтому файл можно повторно открыть без дополнительного использования процедуры assign. |
||
rename (<файловая переменная>, <новое имя>) |
||
процедура переименования файла. Если файл был ранее открыт с помощью процедур reset, rewrite или append, перед выполнением процедуры rename его необходимо закрыть с помощью процедуры close. |
||
erase (<файловая переменная>) |
||
уничтожает файл. Если файл был ранее открыт с помощью процедур reset, rewrite или append, перед выполнением процедуры rename его необходимо закрыть с помощью процедуры close. |
||
flush (<файловая переменная>) |
||
очищает внутренний буфер файла. При выполнении процедуры flush все записи, временно хранящиеся в буфере (т. е. во вспомогательной памяти, предназначенной для промежуточного хранения данных), будут записаны на диск. Если файл был инициирован для чтения процедурой reset, процедура flush игнорируется. |
||
chdir (<путь>) |
||
изменяет текущий каталог, устанавливая путь к новому каталогу. |
||
getdir (<устройство>, <каталог>) |
||
определяет имя текущего каталога. В результате выполнения процедуры getdir получают определенные значения переменная типа word (<устройство>), содержащая номер устройства, и переменная типа string (<каталог>), содержащая путь к текущему каталогу на указанном устройстве, причем 0 соответствует устройству по умолчанию, 1 ? диску a:, 2 ? диску b: и т. д. |
||
mkdir (<имя каталога, включая путь>) |
||
создает каталог с указанным именем. Имя не может совпадать с именем уже существующего каталога. |
||
rmdir (<имя каталога, включая путь>) |
||
удаляет каталог с указанным именем. Удаляемый каталог должен быть пустым, т. е. не содержать файлов или каталогов низшего уровня. |
Стандартные функции для работы с файлами любого типа:
eof (<файловая переменная>) |
||
логическая функция типа boolean. Принимает значение true, если указатель файла находится в конце файла. В этом случае при записи данные будут добавляться в конец файла, при чтении это означает, что файл исчерпан. |
||
ioresult |
функция типа word. Ее значением является код последней операции ввода-вывода. В случае успешного завершения последней операции ввода-вывода принимает значение 0, в противном случае ? код ошибки ввода-вывода. Функция ioresult становится доступной только при отключении контроля за ошибками ввода-вывода с помощью директивы компилятора {$I+}. |
Стандартные процедуры для работы с типизированными файлами:
read (<файловая переменная>, <список переменных>) |
||
чтение очередных компонентов файла. При выполнении процедуры read переменные, указанные в списке, последовательно принимают значения очередных компонентов типизированного файла. При этом тип переменных из указанного списка должен совпадать с типом компонентов файла. Файловая переменная должна соответствовать типизированному файлу (т. е. иметь тип file of ... ) и быть связана с именем конкретного файла с помощью процедуры assign. Файл должен быть открыт для чтения с помощью процедуры reset. После каждого чтения указатель файла сдвигается к следующему компоненту файла. Если файл исчерпан, обращение к процедуре read вызовет ошибку ввода-вывода. |
||
write (<файловая переменная>, <список переменных>) |
||
запись очередных компонентов файла. При выполнении процедуры write в файл записываются значения переменных, указанных в списке. При этом тип переменных из указанного списка должен совпадать с типом компонентов файла. Файловая переменная должна соответствовать типизированному файлу (т. е. иметь тип file of ... ) и быть связана с именем конкретного файла с помощью процедуры assign. Файл должен быть открыт с помощью процедуры reset или rewrite. После каждой записи указатель файла сдвигается к следующему компоненту файла. |
||
seek (<файловая переменная>, <номер компонента>) |
||
смещает указатель файла к компоненту с заданным номером. Номер компонента задается выражением типа longint. Первый компонент файла имеет номер 0. |
Стандартные функции для работы с типизированными файлами:
filesize (<файловая переменная>) |
||
функция типа longint, ее значением является количество компонентов файла. |
||
filepos (<файловая переменная>) |
||
функция типа longint, ее значением является порядковый номер компонента файла, который будет обрабатываться следующей операцией ввода-вывода. Первый компонент файла имеет номер 0. |
Текстовой файл в языке Turbo Pascal рассматривается как совокупность строк переменной длины. Доступ к каждой строке осуществляется последовательно, начиная с первой. При создании текстового файла в конце каждой строки помещается специальный признак конца строки. В конце файла помещается специальный признак конца файла.
Стандартные процедуры для работы с текстовыми файлами:
read (<файловая переменная>, <список переменных>) |
||
чтение данных из файла. Файловая переменная имеет тип text и должна быть связана с именем конкретного файла с помощью процедуры assign. В отличие от типизированных файлов переменные, указанные в списке, могут иметь любой целый или вещественный тип, а также char или string. В зависимости от типа переменных процедура чтения данных выполняется по-разному. При чтении целых или вещественных данных в текстовом файле выделяется последовательность (подстрока) символов, которая должна соответствовать символьному представлению числовой константы, например, 65535 35 4.0 -78.128 -0.27408E-07 Пробелы, которые могут находиться в начале строки (так называемые ведущие пробелы), при этом игнорируются. Признаком конца подстроки (после значащих символов) является пробел, символ конца строки или конца файла. Если символы подстроки не соответствуют принятому формату представления чисел (например, подстрока представляет собой запись действительного числа, в то время как ожидается чтение целого числа), возникает ошибка ввода-вывода. Если достигнут конец файла, а значащих символов не обнаружено, переменная получает значение 0. При чтении символьных данных переменная типа char получает значение, равное очередному считанному символу из файла. |
||
При чтении строковых данных переменная типа string получает значение, соответствующее последовательности считанных из файла символов, причем количество считанных символов равно максимальной длине строки, если только один из считанных символов не является признаком конца строки или конца файла. Если файловая переменная не указана, предполагается, что ввод данных осуществляется с клавиатуры, т. е. мы имеем дело с уже хорошо знакомой нам процедурой read. |
||
readln (<файловая переменная>, <список переменных>) |
||
процедура аналогична процедуре read, за исключением того, что при выполнении процедуры readln считывается целая строка из файла. При следующем обращении к процедуре readln чтение данных из файла начинается с начала следующей строки. Использование процедуры readln без параметра <список переменных> приводит к пропуску строки. |
||
write (<файловая переменная>, <список переменных>) |
||
запись данных в файл. Файловая переменная имеет тип text и должна быть связана с именем конкретного файла с помощью процедуры assign. В отличие от случая типизированных файлов переменные, указанные в списке, могут иметь любой целый или вещественный тип, а также char или string. Если файловая переменная не указана, предполагается, что вывод данных осуществляется на экран, т. е. мы имеем дело с уже хорошо знакомой нам процедурой write. Формат представления данных, записываемых в текстовой файл, может быть определен программистом аналогично тому, как это можно сделать при выводе данных на экран. Например, при выводе десятичных чисел можно указать число цифр после запятой и полное число десятичных знаков, включая знак числа и десятичную точку. |
||
writeln (<файловая переменная>, <список переменных>) |
||
процедура аналогична процедуре write, за исключением того, что при выполнении процедуры writeln в файл записывается целая строка, в конец строки помещается признак конца строки. Использование процедуры writeln без параметра <список переменных> приводит к записи в файл пустой строки (содержащей только признак конца строки). |
Стандартные функции для работы с текстовыми файлами:
eoln (<файловая переменная>) |
||
логическая функция типа boolean. Принимает значение true, если достигнут конец строки. |
||
seekeoln (<файловая переменная>) |
||
логическая функция типа boolean. Принимает значение true, если в строке нет более значащих символов (пробелы и символы табуляции игнорируются). |
||
seekeof (<файловая переменная>) |
||
логическая функция типа boolean. Принимает значение true, если в файле нет более значащих символов (пробелы, символы табуляции и признаки концов строк игнорируются). |
Нетипизированные файлы отличаются тем, что для них не указан тип компонентов. Это делает их совместимыми с любыми другими файлами. При работе с нетипизированными файлами необходимо указывать длину записи нетипизированного файла.
Для записи информации в нетипизированный файл и чтения данных из файла используются специальные процедуры blockread и blockwrite (аналоги процедур read и write).
Ниже мы рассмотрим пример программы, которая находит сумму действительных чисел, содержащихся в файле. В первой части программы создается файл, и в него записываются действительные числа, вводимые с клавиатуры. Затем вычисляется и выводится на экран сумма чисел. Сначала мы рассмотрим использование типизированного файла.
Program Files_1;
type
RealFile = file of real;
var
freal: RealFile;
name: string[8];
Procedure OpenRealFileForWriting;
{Процедура открытия для записи файла,
компонентами которого являются действительные
числа}
begin {OpenRealFileForWriting}
write('Введите имя файла ');
write('(не более 8 символов): ');
read(name);
assign(freal, name);
{Файловая переменная freal связывается
с именем файла}
rewrite(freal)
{Файл открывается для записи}
end; {OpenRealFileForWriting}
Procedure WriteToRealFile;
{Процедура ввода данных в файл, компонентами
которого являются действительные числа}
var
x: real;
begin {WriteToRealFile}
write('Последовательно вводите ');
writeln('действительные числа.');
write('Ввод каждого числа завершайте ');
writeln('нажатием клавиши Enter.');
write('Для окончания ввода данных ');
writeln('нажмите клавиши Ctrl-Z и Enter.');
while not eof
do begin
readln(x);
{Ввод очередного числа
с клавиатуры}
write(freal, x)
{Запись очередного числа
в файл}
end;
close(freal)
{Файл закрывается}
end; {WriteToRealFile}
Procedure ReadRealFile;
{Процедура открывает для чтения файл,
компонентами которого являются действительные
числа и выводит их на экран, а также
определяет их сумму}
var
x, sum: real;
begin {ReadRealFile}
sum := 0;
reset(freal);
{Файл открывается для чтения}
write('Файл', name:9);
writeln(' содержит следующие числа:');
while not eof(freal)
do begin
read(freal, x);
{Чтение очередного числа
из файла}
writeln(x:10:5);
{Вывод очередного числа
на экран}
sum := sum + x
{Вычисление суммы чисел}
end;
writeln('Сумма чисел в файле: ', sum:10:5)
end; {ReadRealFile}
begin {Program}
write('Определение суммы чисел, ');
write('содержащихся в ');
writeln('типизированном файле');
writeln;
OpenRealFileForWriting;
WriteToRealFile;
writeln;
ReadRealFile;
writeln;
end. {Program}
В следующем варианте программы используется текстовой файл.
Program Files_2;
var
ftext: text;
name: string[8];
Procedure OpenTextFileForWriting;
{Процедура открытия для записи текстового файла}
begin {OpenTextFileForWriting}
write('Введите имя файла ');
write('(не более 8 символов): ');
read(name);
assign(ftext, name);
{Файловая переменная ftext связывается
с именем файла}
rewrite(ftext)
{Файл открывается для записи}
end; {OpenTextFileForWriting}
Procedure WriteToTextFile;
{Процедура ввода данных в текстовой файл}
var
x: real;
begin {WriteToTextFile}
write('Последовательно вводите ');
writeln('действительные числа.');
write('Ввод каждого числа завершайте ');
writeln('нажатием клавиши Enter.');
write('Для окончания ввода данных ');
writeln('нажмите клавиши Ctrl-Z и Enter.');
while not eof
do begin
readln(x);
{Ввод очередного числа
с клавиатуры}
writeln(ftext, x)
{Запись очередного числа
в файл}
end;
close(ftext)
{Файл закрывается}
end; {WriteToTextFile}
Procedure ReadTextFile;
{Процедура открывает для чтения текстовой файл и
выводит на экран содержащиеся в нем числа,
а также определяет их сумму}
var
x, sum: real;
begin {ReadTextFile}
sum := 0;
reset(ftext);
{Файл открывается для чтения}
write('Файл', name:9);
writeln(' содержит следующие числа:');
while not eof(ftext)
do begin
readln(ftext, x);
{Чтение очередного числа
из файла}
writeln(x:10:5);
{Вывод очередного числа
на экран}
sum := sum + x
{Вычисление суммы чисел}
end;
writeln('Сумма чисел в файле: ', sum:10:5)
end; {ReadTextFile}
begin {Program}
write('Определение суммы чисел, ');
write('содержащихся в ');
writeln('текстовом файле');
writeln;
OpenTextFileForWriting;
WriteToTextFile;
writeln;
ReadTextFile;
writeln
end. {Program}
Тип запись в языке Turbo Pascal
Запись ? это структура данных, состоящая из фиксированного числа компонентов, называемых полями записи. В отличие от массива, поля записи могут иметь различные типы. Для того, чтобы можно было сослаться на то или иное поле записи, каждое поле имеет имя.
Описание типа запись:
type
<имя типа> = record
<имя поля>: <тип поля>;
<имя поля>: <тип поля>;
...
<имя поля>: <тип поля>
end;
Примеры:
type
personname = record {Запись ИМЯ ЧЕЛОВЕКА}
familyname: string[15];
{Поле ФАМИЛИЯ}
name: string[10] {Поле ИМЯ}
end;
address = record {Запись АДРЕС}
street: string[20]; {Поле УЛИЦА}
number: byte {Поле НОМЕР ДОМА}
end;
person = record {Запись ЧЕЛОВЕК}
pname: personname;
{Поле ИМЯ. Само являемся записью.
Состоит из ФАМИЛИИ и ИМЕНИ}
paddr: address;
{Поле АДРЕС.
Также является записью}
phone: longint; {Поле ТЕЛЕФОН}
year: word {Поле ГОД РОЖДЕНИЯ}
end;
var
p, q: person;
Альтернативно, переменную типа запись можно объявлять в программе без предварительного описания самого типа:
var
<имя переменной>: record
<имя поля>: <тип поля>;
<имя поля>: <тип поля>;
...
<имя поля>: <тип поля>
end;
Так же, как и в случае массивов, в языке Turbo Pascal допустимо с помощью одного оператора присвоить всем компонентам одной записи значения, которые имеют компоненты другой записи. Например, для записей p и q, описанных выше, допустим оператор
p := q;
С другой стороны, к каждому из компонентов записи можно обращаться отдельно. используя составное имя, которое состоит из имени переменной и имени поля, разделенных точкой:
p.year := 1968;
p.paddr.number := 181;
Таким образом, можно обращаться к полям любой степени вложенности (как в приведенном выше примере, когда поле paddr переменной P, в свою очередь, представляет собой запись, и мы обращаемся к полю number этой записи).
Альтернативно, для обращения к полям записи можно использовать оператор with.
Оператор присоединения with:
with <имя переменной>
do <имя поля> := <значение>;
Например,
with p
do with paddr
do number := 181;
или
with p.paddr
do number := 181;
(эти операторы эквивалентны).
Рассмотрим следующую задачу: подготовим файл данных, в котором содержатся сведения о сотрудниках некоего учреждения ? фамилия, имя, адрес (название улицы и номер дома), телефон, год рождения каждого сотрудника. Наиболее удобно использовать типизированный файл, компоненты которого являются записями:
var
f: file of person;
Процедура CreateFile создает файл, содержащий необходимые сведения. Процедура WriteRecord добавляет в файл очередную запись. Процедура ReadData позволяет вывести на экран данные, содержащиеся в файле.
Далее, предположим, нам нужно узнать адрес сотрудника по его имени и фамилии. Процедура SearchData осуществляет поиск необходимой информации.
Program Records;
type
personname = record
familyname: string[15];
name: string[10]
end;
address = record
street: string[20];
number: byte
end;
person = record
pname: personname;
paddr: address;
phone: longint;
year: word
end;
var
p, q: person;
f: file of person;
Procedure WriteRecord;
{Процедура внесения в файл очередной записи}
var
fn: string[15];
n: string[10];
st: string[20];
nm: byte;
ph: longint;
y: word;
begin {WriteRecord}
writeln('Введите данные:');
write('Фамилия: ');
readln(fn);
write('Имя: ');
readln(n);
write('Название улицы: ');
readln(st);
write('Номер дома: ');
readln(nm);
write('Телефон: ');
readln(ph);
write('Год рождения: ');
readln(y);
with p
do begin
with pname
do begin
familyname := fn;
name := n
end;
with paddr
do begin
street := st;
number := nm
end;
phone := ph;
year := y
end;
write(f, p)
end; {WriteRecord}
Procedure CreateFile;
{Процедура создания файла и ввода в него
необходимой информации}
var
n: string[8];
a: 0..1;
begin {CreateFile}
write('Введите имя файла ');
write('(не более 8 символов): ');
readln(n);
assign(f, n);
rewrite(f);
repeat
WriteRecord;
write('Вы будете вводить следующую ');
write('запись? 1 - да, 0 - нет ');
readln(a);
writeln
until a = 0;
writeln;
close(f)
end; {CreateFile}
Procedure ReadData;
{Процедура чтения данных из файла и вывода
информации на экран}
begin {ReadData}
reset(f);
write('Файл данных содержит ');
writeln('следующую информацию:');
while not eof(f)
do begin
read(f, p);
write('Фамилия: ');
writeln(p.pname.familyname);
write('Имя: ');
writeln(p.pname.name);
write('Улица: ');
writeln(p.paddr.street);
write('Номер дома: ');
writeln(p.paddr.number);
write'Телефон: ');
writeln(p.phone);
write('Год рождения: ');
writeln(p.year);
writeln
end;
close(f)
end; {ReadData}
Procedure SearchData;
{Процедура поиска информации}
var
fn: string[15];
n: string[10];
flag: boolean;
begin {SearchData}
reset(f);
write('Поиск адреса сотрудника ');
writeln('по его имени и фамилии');
write('Введите фамилию: ');
readln(fn);
write('Введите имя: ');
readln(n);
flag := true;
while not eof(f) and flag
do begin
read(f, p);
if (fn = p.pname.familyname)
and (n = p.pname.name)
then begin
write('Адрес: ');
write(p.paddr.street);
write(' ');
writeln(p.paddr.number);
flag := false
end
end;
if flag
then writeln('Запись о таком сотруднике
отсутствует');
writeln;
writeln
end; {SearchData}
begin {Program}
CreateFile;
ReadData;
SearchData
end. {Program}
Литература
1. В. Э. Фигурнов, IBM PC для пользователя. Краткий курс, М., 1999.
2. В. В. Фаронов, Turbo Pascal 7.0. Начальный курс, М., Изд-во "Нолидж", 1998.
3. Л. А. Бугаев, Г. М. Чечин, К. Н. Жучков, Методические указания к проведению практических занятий по курсу "Информатика". Вып. 1.1. Необходимые определения и команды для работы на компьютере. Элементы языка Pascal (часть I), Ростов-на-Дону, УПЛ РГУ, 1998.
4. Л. А. Бугаев, Г. М. Чечин, К. Н. Жучков, Методические указания к проведению практических занятий по курсу "Информатика". Вып. 1.4.Задачи для самостоятельного решения на компьютере, Ростов-на-Дону, УПЛ РГУ, 1998.
5. Шестакова Т. П. Методические указания по курсу "Программирование и вычислительная физика". Часть I. Основные конструкции языка Turbo Pascal. Простейшие типы данных, Ростов-на-Дону, УПЛ РГУ, 2003.
6. Шестакова Т. П. Методические указания по курсу "Программирование и вычислительная физика". Часть II. Процедуры и функции в языке Turbo Pascal. Перечисляемые типы данных, тип-диапазон и оператор case. Массивы, Ростов-на-Дону, УПЛ РГУ, 2003.
Размещено на Allbest.ru
...Подобные документы
Структура и основные элементы языка Turbo Pascal. Алгоритм составления простейших программ на Turbo Pascal. Применение условного оператора и сильноветвящихся алгоритмов. Циклы с предусловием и постусловием, сочетание циклических и условных операторов.
реферат [64,0 K], добавлен 20.03.2016Символьный тип данных как составляющая языка программирования: управляющие символы, лексемы и разделители. Разработка программного обеспечения для практической реализации решения задач, содержащих символьные величины языка программирования Turbo Pascal.
курсовая работа [37,7 K], добавлен 03.05.2012Изучение текстового режима языка программирования Turbo Pascal. Написание игры "Змейка" с помощью средств, процедур и функций языка программирование Turbo Pascal. Структурное и функциональное описание разработки. Листинг и общие примеры работы программы.
контрольная работа [286,3 K], добавлен 10.04.2011История появления и распространения Turbo Pascal - среды разработки для языка программирования Паскаль. Общий вид объявления файлового типа. Входная, выходная и промежуточная информация. Алгоритм решения задачи: словесный алгоритм, блок-схема, программа.
курсовая работа [359,4 K], добавлен 05.01.2010Характеристика используемой операционной системы, языка программирования. Структура программы на языке Turbo Pascal 7.1. Операторы языка Turbo Pascal. Проведение сортировки записей. Алгоритмы программы и подпрограмм. Причины возникновения ошибок.
курсовая работа [454,1 K], добавлен 13.06.2014Pascal - высокоуровневый язык программирования общего назначения и интегрированная среда разработки программного обеспечения для платформ DOS и Windows. Входная информация, требуемая для решения задачи и принятые обозначения; описание алгоритма.
курсовая работа [259,6 K], добавлен 18.01.2011Понятие и история развития языка Turbo Pascal, оценка его графических возможностей и особенностей. Инициализация графического режима. Управление экраном и окнами, цветом и фоном, принципы работы с текстом. Построение графиков функций и изображений.
курсовая работа [159,9 K], добавлен 17.12.2014История создания и развитие Pascal. Особенности пакета программирования Turbo. его возможности редактора текстов, компилятора и отладчика. Построения программы на языке Turbo Pascal, ее структура, типы алгоритмов, одномерные и многомерные массивы.
курсовая работа [519,3 K], добавлен 25.06.2011Основы работы на языке высокого уровня Turbo Pascal. Основное оборудование и программное обеспечение. Операторы, необходимы для работы в графической среде Turbo Pascal. Запуск графического режима. Текст программы в графической среде Turbo Pascal.
лабораторная работа [12,7 K], добавлен 14.05.2011Язык программирования Pascal и его турбооболочка. Аналитический обзор игрового программного обеспечения. Функции модуля Crt. Постановка задачи создания несложной игровой программы "Турбозмей", алгоритм реализации и описание пользовательского интерфейса.
курсовая работа [100,4 K], добавлен 15.05.2014Free Pascal как свободная реализация языка Паскаль, совместимая с Borland Pascal и Object Pascal - Delphi, но при этом обладающая и некоторыми дополнительными возможностями. Основы алгоритмизации и программирования, создание визуальных приложений.
учебное пособие [4,2 M], добавлен 13.12.2011Ознакомление со структурой языка программирования Turbo-Pascal 7.0, его алфавитом, выражениями и простейшими конструкциями (метками, идентификаторами). Способы описания арифметических, вещественных, логических и символьных операций в программной среде.
реферат [68,2 K], добавлен 07.02.2011История программных продуктов "Borland Software Corporation". Языки программирования Turbo-Pascal, Delphi, CaliberRM, Turbo C++ и основные их принципы работы. Развитие их совместимости с Windows. Создание корпоративных систем на основе Веб-технологий.
реферат [20,9 K], добавлен 02.04.2010История и основы структурного программирования в среде Turbo Pascal. Работа с различными типами данных. Операторы языка. Работа с символьными и строковыми переменами, одномерным, двумерным массивами. Классификация компьютерных игр. Игры на языке Паскаль.
курсовая работа [28,8 K], добавлен 06.05.2014Разработка эскизного и технического проектов программы "Helpopr" (ввод, хранение и вывод данных на дисплей по запросу пользователя). Язык программирования Turbo Pascal. Описание алгоритма программы. Требования к компьютеру и программному обеспечению.
курсовая работа [198,1 K], добавлен 03.02.2010Разработка программ на языке Turbo Pascal на основе использования массивов данных. Особенности хранения данных, способы объявления переменных, действия над элементами массивов, их ввод и вывод. Практическое применение одномерных и многомерных массивов.
методичка [17,8 K], добавлен 25.11.2010Разработка программы средствами Turbo Pascal для автоматизации процесса работы с небольшими базами данных. Состав используемого аппаратного обеспечения. Общая схема структуры языка программирования Паскаля и приемы процедурного программирования.
курсовая работа [61,6 K], добавлен 09.03.2011Процедура сложения и вычитания матриц (с учетом коэффициента перед матрицами). Основные концепции языка Turbo Pascal. Фортран как один из пионеров программирования Дейкстрой. Первый компилятор Паскаля на платформах DEC. Основные стандарты языка.
контрольная работа [21,6 K], добавлен 08.03.2011Теоретический расчет распределений температур внутри тела и их изменений во времени на основании уравнения теплопроводности, сведенного в дальнейшем в бесконечный ряд Фурье в среде языка программирования Turbo Pascal 7.0, анализ его результатов.
курсовая работа [174,2 K], добавлен 20.03.2012Программирование и структура программы на языке Turbo Pascal и MS Visual C++6.0. Вычисление площади круга. Реализация программы в системе Turbo Pascal и MS VISUAL C++6.0 для Windows. Структура окна ТРW. Сохранение текста программы в файле на диске.
лабораторная работа [3,7 M], добавлен 22.03.2012