Основы программирования — второй семестр 08-09; Михалкович С.С.; I часть — различия между версиями

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск
(Лекция 1)
(Буферизация файлов)
Строка 53: Строка 53:
 
Пример 4. Сортировка файла
 
Пример 4. Сортировка файла
  
<code>
+
<source lang="Pascal">
 
for var i:=FileSize(f)-1 downto 1 do
 
for var i:=FileSize(f)-1 downto 1 do
 
for var j:=0 to i-1 do
 
for var j:=0 to i-1 do
Строка 65: Строка 65:
 
   end;
 
   end;
 
end;
 
end;
</code>
+
</source>

Версия 23:50, 16 февраля 2009

Лекция 1

Файлы

Определение. Преимущества файлов. Деление файлов по типу компонент: текстовые и двоичные (типизированные и бестиповые) Деление файлов по способу доступа: последовательный и произвольный доступ. Понятие файловой переменной, файлового указателя.

Основные подпрограммы для работы с файлами

Assign
Reset
Rewrite
Close
Eof
Read
Write
Erase
Rename

Дополнительные подпрограммы для работы с файлами

FileExists
DeleteFile
RemoveDir
GetCurrentDir
SetCurrentDir
CreateFir
ExtractFilePath
ExtractFileName
ExtractFileExt

Обработка ошибок ввода-вывода для файлов

Пример. Проверка файла на существование.

Буферизация файлов

===Подпрограммы для работы с типизированными файлами

Truncate
FileSize
FilePos
Seek

Варианты использования:

Seek(FileSize(f)) - переместить файловый указатель за конец файла (Eof(f)=True)
Seek(FilePos(f)-1) - вернуться на 1 позицию назад

Пример 1. Добавление 0 в конец файла

Пример 2. Возведение всех элементов файла в квадрат.

Пример 3. Использование в базах данных - перевод Иванова в 10 группу в виде наказания

Пример 4. Сортировка файла

for var i:=FileSize(f)-1 downto 1 do
for var j:=0 to i-1 do
begin
  Seek(f,j);
  read(f,x,y);
  if x>y then
  begin
    Seek(f,j);
    write(f,y,x);
  end;
end;