Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PASСAL_a4_2007.doc
Скачиваний:
31
Добавлен:
13.09.2019
Размер:
2.51 Mб
Скачать

Вопросы для контроля

  1. Что такое файл?

  2. Чем файл отличается от массива?

  3. Чем характеризуется файл?

  4. Как описать файловую переменную в программе на языке Pascal?

  5. Какие операции можно выполнять с файлами?

  6. Какие внешние устройства могут быть использованы для хранения файлов?

  7. Какие устройства могут быть использованы только для записи файлов?

  8. Как связать файловую переменную, описанную в программе, с конкретным именем файла на конкретном устройстве? Напишите, как будет выглядеть эта команда, если:

а) файл vera.dat на магнитном диске;

б) файл raja.dat на принтере;

в) файл iren.dat на экране терминала.

  1. Какая процедура используется для подготовки файла для чтения?

  2. Для чего используется процедура REWRITE?

  3. Как проверить, есть ли требуемый файл на диске?

  4. Какая информация может быть записана в текстовый файл?

  5. Как осуществляется запись информации в текстовый файл?

  6. Как в текстовый файл заносить символ "конец строки"?

  7. Каково назначение функции FLUSH? CLOSE?

  8. Как осуществляется алгоритм чтения информации из текстового файла?

  9. Пусть требуется составить алгоритм подсчета латинских букв в текстовом файле book.eun, расположенном на устройстве А:. Какая из следующих программ правильно реализует этот алгоритм:

а)

program read1;

const

Latin=['A'..'z'];

var sign : char;

num : integer;

file1 : text;

begin

reset(file1);

num:=0;

while not(eof(file1)) do

begin

while not(eoln(file1)) do

begin

read(file1,sign);

if sign in Latin

then num:=num+1

end;

readln(file1)

end;

writeln('Лат. символов ',

num)

end.

б)

program rea d2;

const Latin=['A'..'z'];

var sign:char;

num:integer;

file1:text;

begin

assign(file1,'A:book.eun');

reset(file1);

num:=0;

while not(eoln(file1)) do

begin

while not(eof(file1)) do

begin

read(file1,sign);

if sign in Latin

then num:=num+1

end;

readln(file1)

end;

writeln('Лат.signов - ',

num)

end.

в)

program read3;

const

Latin=['A'..'z'];

var sign:char;

num:integer;

file1:text;

begin

assign(file1,'A:book.eun');

reset(file1);

num:=0;

while not(eof(file1)) do

begin

readln(file1,sign);

if sign in Latin

then num:=num+1

end;

writeln('Лат.символов ‘,

num)

end.

г)

program read4;

const Latin=['A'..'z'];

var sign:char;

num:integer;

file1:text;

begin

assign(file1,'A:book.eun');

reset(file1);

num:=0;

while not(eof(file1)) do

begin

while not(eoln(file1)) do

begin

read(file1,sign);

if sign in Latin

then num:=num+1

end;

readln(file1)

end;

writeln('Лат.символов - ',

num)

end.

  1. Как до­пи­сать информацию в конец существующего текстового файла?

  2. Предположим, что в файле TEMP.DAT записаны целые числа 4, 7, 2, 9, каждое из которых находится на отдельной строке. Покажите, что будет напечатано в результате выполнения показанного ниже фрагмента при следующих дополнительных условиях:

а) строка, содержащая число 9, является последней строкой файла и не завершается кодом "перевод строки";

б) строка, содержащая число 9, является последней строкой файла и завершается кодом "перевод строки".

var datafile : text;

x : integer;

. . .

assign(datafile,'temp.dat');

reset(datafile);

while not eof(datafile) do

begin

readln(datafile,x);

writeln(x);

if eof(datafile) then writeln('Конец файла')

end;

. . .

Как исправить эту программу, чтобы она работала для случаев а) и б) одновременно?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]