Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Функции для работы с текстовыми файлами





 

EOLN (файловая_переменная) – возвращает значение True, если достигнут маркер конца строки.

SeekEOLN (файловая_переменная) – пропускает все пробелы и знаки табуляции до маркера конца строки или до первого значащего символа и возвращает значение True, если маркер обнаружен.

SeekEOF (файловая_переменная) – пропускает все пробелы и знаки табуляции и маркеры конца строки до маркера конца файла или до первого значащего символа и возвращает значение True, если маркер обнаружен.

 

Порядок создания текстового файла

 

1. Присвоить имя файлу (Assign).

2. Открыть новый файл (Rewrite).

3. Записать компонент в файл (WriteLn).

4. Закрыть файл (Close).

 

Порядок использования текстового файла

 

1. Присвоить имя файлу (Assign).

2. Открыть существующий файл (Reset).

3. прочитать компонент из файла (ReadLn).

4. Закрыть файл (Close).

 

Порядок корректировки текстового файла

 

Корректировка текстового файла заключается во внесении новых компонент в конец файла.

1. Присвоить имя файлу (Assign).

2. Открыть файл для дополнения (Append).

3. Записать компонент в файл (WriteLn).

4. Закрыть файл (Close).

 

Пример 1. Создать файл, компоненты которого являются строками. Распечатать все строки файла, длина которых более 20 символов.

Program Demo_1;

Var

F: Text;

St: String;

{создание текстового файла}

Procedure Sozd;

Begin

Assign (F,’Stroki.dat’);

Rewrite(F);

Writeln (’Введите строки файла’);

Writeln (’Признак окончания ввода – ***’);

While True do

Begin

Readln(St);

If St=’***’ then

Begin

Close(F);

Exit;

end;

WriteLn(F,St); {записали строку в файл}

end;

End;

{обработка текстового файла}

Procedure Vivod;

Begin

Assign (F,’Stroki.dat’);

Reset(F);

While Not SeekEOF(F) do

Begin

Readln(F,St); {прочитали строку из файла}

If Length(St)>20 then

WriteLn(St);

end;

Close(F);

End;

Begin {основная программа}

Sozd;

Vivod;

End.

 

Пример 2. Найти количество положительных элементов в целочисленном векторе A[1..5]. Результаты поместить в файл. Входной файл Input.txt содержит 5 чисел по одному в строке. Выходной файл Output.txt должен содержать единственное число – количество положительных элементов.

 

Пример входного файла Input.txt Пример выходного файла Output.txt
–3 –1  

 

Program Demo_2;

Var

F: Text;

A: array [1..5] of Integer;

i,kol: Byte;

Begin

{считываем данные из файла}

Assign (F,’Input.txt’);

Reset (F);

For i:=1 to 5 do

ReadLn(F,A[i]);

Close(F);

{считаем количество положительных элементов}

kol:=0;

For i:=1 to 5 do

If A[i]>0 then Inc(kol);

{записываем результат в файл}

Assign (F,’Output.txt’);

Reset (F);

WriteLn(F,kol);

Close(F);

End.

 

Пример 3. Дана вещественная матрица A[1..5,1..5]. Построить вектор B[1..5], состоящий из сумм отрицательных элементов каждой строки матрицы A. Результаты поместить в файл. Входной файл Input.txt содержит 5 строк по 5 чисел в строке. Выходной файл Output.txt должен содержать элементы вектора B – по одному в строке.

 

Пример входного файла Input.txt Пример выходного файла Output.txt
5.1 4.0 2.2 –1.0 6.3 –3.1 6.1 –3.1 –2.2 6.8 4.1 –4.5 2.2 –5.6 –3.2 –1.1 1.0 2.1 –4.1 6.3 1.1 4.7 2.5 –8.0 3.3 -1.0 –8.4 –13.3 –5.2 -8.0

 

Program Demo_3;

Var

F: Text;

A: array [1..5,1..5] of Real;

B: array [1..5] of Real;

i,j,sum: Byte;

Begin

{считываем данные из файла}

Assign (F,’Input.txt’);

Reset (F);

For i:=1 to 5 do

Begin

For j:=1 to 5 do

Read(F,A[i,j]);

ReadLn(F);

END;

Close(F);

{считаем сумму отрицательных элементов в каждой строке}

For i:=1 to 5 do

Begin

sum:=0;

For j:=1 to 5 do

If A[i,j]<0 then sum:=sum+A[i,j];

B[i]:=sum

end;

{записываем результат в файл}

Assign (F,’Output.txt’);

Reset (F);

For i:=1 to 5 do

WriteLn(F,B[i]);

Close(F);

End.

 







Date: 2015-10-19; view: 305; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.009 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию