Автоматизация работы с базами данных
end;
if IOResult <> 0 then {ошибка чтения файла}
writeln('Ошибка чтения файла .')
else {чтение успешно}
begin
close(f); {закрываем файл}
writeln('Всего записей: ',count+1);
gotoxy(60,25);
Write('Чтение окончено .');
end; {включение реакции на ошибки ввода-вывода}
{$I+}
readkey;
end;
{Рекурсивная процедура записи компонент дерева
в файл}
{Метод - обход дерева сверху-вниз с организацией записи
компоненты дерева в файл}
Procedure SaveToFile(t : pTree);
begin
if t <> nil then
begin
move(t^,st,SizeOf(CompF)); {копируем содержимое компоненты дерева в st}
{$I-}
write(f,st); {запись компоненты в файл}
Writeln('Записан в файл - ',st.fio);
if IOResult <> 0 then {ошибка записи}
begin
writeln(#13#10,'Ошибка записи в файл!');
exit;
end;
{$I+}
SaveToFile(t^.left); {движение в левое поддерево}
SaveToFile(t^.right); {движение в правое поддерево}
end;
end;
{Тело программы}
begin
clrscr; {очистка экрана}
mark(pClear);{запоминаем состояние динамической памяти}
root := nil; {дерево пустое - корень = nil}
count := -1; {нет ни одного работника}
{Чтение данных из файла - процедура LoadOfFile}
LoadOfFile;
{Вызов процедуры меню - работа пользователя}
Menu;
{Окончание работы - организация сохранения данных}
clrscr;
{$I-}
assign(f,'Rab.tmp'); {связываем с резервной копией}
erase(f); {удаляем файл}
if IOResult <> 0 then writeln('Ошибка удаления - Rab.tmp.');
assign(f,'Rab.dat'); {связываем с файлом данных с прошлого сеанса}
rename(f,'Rab.tmp'); {переименовываем - резервная копия}
if IOResult <> 0 then writeln('Ошибка создания копии - Rab.tmp.');
{$I+}
{Сохраняем данные в файл}
assign(f,'Rab.dat');
rewrite(f); {открываем на перезапись}
SaveToFile(root); {вызов процедуры записи в файл}
close(f); {закрываем файл - запись окончена}
gotoxy(60,25);
write('Запись окончена .');
release(pClear);{очищаем динамическую память от результатов работы}
readkey
end.
Список использованной литературы
1. Вирт Никлаус. Алгоритмы и структуры данных: Пер. с англ. – 2-е изд., испр. – СПб.: Невский Диалект, 2001. – 352 с.: ил.
2. Епанешников А., Епанешников В. Программирование в среде Turbo Pascal 7.0. – 4-е изд., испр. и дополн. – М.: «ДИАЛОГ-МИФИ», 1998. – 367 с.
3. Зуев Е.А. Turbo Pascal. Практическое программирование. – М.: «Издательство ПРИОР», 1999. – 336 с.
4. Климова Л.М. Практическое программирование. Решение типовых задач. – М.: КУДИЦ-ОБРАЗ, 2000. – 496 с., ил.
5. Ляхович В.Ф. Информатика: Пособие для учащихся 10-11 кл. общеобразоват. учреждений. – М.: Просвещение, 1998. – 352 с.
6. Фаронов В.В. Turbo Pascal 7.0. Начальный курс. Учебное пособие. – М.: «Нолидж», 2001
7. Фаронов В.В. Turbo Pascal 7.0. Практика программирования. Учебное пособие. – М.: «Нолидж», 2001
Размещено на Allbest.ru
Другие рефераты на тему «Программирование, компьютеры и кибернетика»:
Поиск рефератов
Последние рефераты раздела
- Основные этапы объектно-ориентированного проектирования
- Основные структуры языка Java
- Основные принципы разработки графического пользовательского интерфейса
- Основы дискретной математики
- Программное обеспечение системы принятия решений адаптивного робота
- Программное обеспечение
- Проблемы сохранности информации в процессе предпринимательской деятельности