Помощь - Поиск - Пользователи - Календарь
Полная версия: Файлы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Шорох Анастасия
Описать функцию getInt(Name,k) целого типа , возвращающую k-й эле-мент файла целых чисел с именем Name ( элементы нумеруются от 0). Если файл не существует или не содержит k-го элемента , то функция возвращает 0. С помощью этой функции вывести пять элементов данного файла с указанны-ми номерами.
буду благодарна!
APAL
Вся задача сводится к работе со стандартной процедурой:

Seek (процедура)


Перемещает текущий указатель позиции файла на
определенный компонент.

Объявление:
Procedure Seek(Var F; N : Longint);

Режим:
Windows, Real, Protected

Замечания:
F - переменная любого файлового типа за
исключением текстового, и N - выражение типа
Longint. Указатель позиции файла F
перемещается на номер компонента N. Номер
первого компонента файла равен нулю. Чтобы
расширить файл, вы можете передвинуть
указатель на один компонент за последний
компонент в файле. То есть, оператор Seek(F,
FileSize(F)) перемещает текущий указатель
позиции файла на конец файла.


Ограничения:
Не может быть использована на текстовых
файлах. Файл должен быть открыт.


{FilePos.PAS}

{ Пример программы для функций FilePos и FileSize и процедуры Seek }

Uses WinCrt;

Var  F : File Of Byte;
  Size : LongInt;

Begin
 { Get File name from command line }
 Assign(F, ParamStr(1));
 Reset(F);
 Size:=FileSize(F);
 WriteLn('Размер файла : ', Size, ' байт.');
 WriteLn('Установка указателя позиции на середину файла...');
 Seek(F, Size Div 2);
 WriteLn('Текущая позиция : ', FilePos(F));
 Close(f);
End.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.