![](/user_photo/2706_HbeT2.jpg)
- •Введение
- •Лабораторная работа №1. Создание простого приложения
- •1 ) Последовательность действий по созданию интерфейса пользователя
- •2) Последовательность действий по программированию щелчка по командным кнопкам (программирование событий):
- •3) Компиляция и выполнение приложения
- •1) Последовательность действий по созданию интерфейса пользователя
- •2) Последовательность действий по программированию событий
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа №2. Циклические программы. Многострочное поле memo
- •1) Последовательность действий по созданию интерфейса пользователя
- •2) Последовательность действий по программированию щелчка по командным кнопкам (программирование событий)
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа №3. Работа с одномерными массивами
- •1) Последовательность действий по созданию интерфейса пользователя
- •2) Последовательность действий по программированию событий
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 4. Работа с двумерными массивами
- •Контрольные вопросы
- •Лабораторная работа № 5. Процедуры и функции в delphi
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 6. Рекурсивные процедуры и функции
- •Контрольные вопросы
- •Лабораторная работа №7. Разработка приложения с несколькими модулями
- •2) Последовательность действий по программированию событий
- •Лабораторная работа №8. Работа со строками
- •1) Последовательность действий по созданию интерфейса пользователя
- •2) Последовательность действий по программированию событий
- •3) Откомпилируйте приложение и проверьте его работу задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа №9. Создание текстового редактора
- •Задание для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 10. Методы простой сортировки
- •Задание для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 11. Поиск данных в массиве
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа №12. Работа с файлами
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа №13. Работа с типизированными файлами (файлы записей)
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 14. Динамические структуры данных . Стек и очередь
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 15. Практическое применение стека и очереди
- •Лабораторная работа №16. Линейные списки
- •Лабораторная работа №17. Работа с бинарными деревьями поиска
- •Задание для самостоятельной работы
- •Лабораторная работа №18. Основы объектно-ориентированного программирования
- •Задание для самостоятельной работы
- •Лабораторная работа №19. Графика в delphi. Компоненты shape и chart
- •Контрольные вопросы
- •Лабораторная работа №20. Графика в delphi. Рисование по пикселам и пером
- •Контрольные вопросы
- •Лабораторная работа № 21. Вычисление суммы ряда
- •Литература
- •Содержание
- •214013 Г. Смоленск, Энергетический проезд, 1
Задания для самостоятельной работы
Выполните бинарный поиск с использованием рекурсивной функции.
Контрольные вопросы
Опишите алгоритм работы последовательного поиска.
Опишите алгоритм работы бинарного поиска.
Можно ли выполнить бинарный поиск в массиве 3, 7, 1, 4, 8, 9. 12?
Лабораторная работа №12. Работа с файлами
Цель работы: Освоить работу с файлами в среде Delphi. Изучить процедуры и функции обработки файлов, обработку ошибок при работе с файлами.
Подготовка к работе:
Изучить процедуры и функции для работы с файлами различных типов;
Изучить методы обработки ошибок ввода/вывода.
Задание 1. Создать файл f, содержащий целые числа. Сформировать файл g, содержащий четные числа из файла f. Приложение должно иметь вид, приведенный на рисунке 12.1.
Выполнить необходимые действия по созданию интерфейса пользователя
Для события OnClick кнопки «Пуск» запишите программный код:
procedure TForm1.Button1Click(Sender: TObject);
VAR f,g:File of Integer;
i,n,x:Integer;
begin
AssignFile(f,'c:\f1.dat'); AssignFile(g,'c:\g1.dat');
// Количество компонент в файле f
n:=StrToInt(Edit1.Text);
// Заполнение файла f
Randomize; Rewrite(f);
For i:=1 to n do
begin
x:=-50 +Random(100); Write(f,x);
end;
// Вывод на экран файла f и формирование файла g
Reset(f);
Rewrite(g);
While not Eof(f) do
begin
Read(f,x); Memo1.Lines.Add(intToStr(x));
If x mod 2 =0 then Write(g,x);
end;
// Вывод на экран фала g
Reset(g);
While not Eof(g) do
begin
Read(g,x); Memo2.Lines.Add(intToStr(x));
end;
end;
ЗАДАНИЕ 2. Создать символьный файл f. Сформировать файл g, содержащий все компоненты файла f в обратном порядке. Приложение должно иметь вид (рис. 12.2).
Выполнить необходимые действия по созданию интерфейса пользователя
Для события OnClick кнопки «Пуск» запишите программный код:
procedure TForm1.Button1Click(Sender: TObject);
VAR f,g:File of Char; x:Char;
i,n,k:Integer;
begin
AssignFile(f,'c:\f2.dat');
AssignFile(g,'c:\g2.dat');
// Количество компонент в файле f
n:=StrToInt(Edit1.Text);
Randomize;
// Формирование файла f
Rewrite(f);
For i:=1 to n do
begin
x:=Chr(65+Random(26)); Write(f,x);
end;
// Вывод на экран файла f
Reset(f);
While not Eof(f) do
begin
Read(f,x); Memo1.Lines.Add(x);
end;
// Формирование файла g
k:=FileSize(f); Rewrite(g);
For i:= k-1 downto 0 do
begin
Seek(f,i); Read(f,x); Write(g,x);
end;
// Вывод на экран файла g
Reset(g);
While not Eof(g) do
begin
Read(g,x); Memo2.Lines.Add(x);
end;
end;