Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Лабораторный практикум по объектно-ориентированному программированию

Покупка
Артикул: 728259.01.99
Доступ онлайн
90 ₽
В корзину
В практикуме рассмотрена технология объектно-ориентированного программирования (ООП). Приведены теоретические основы ООП и их реализация на языке программирования DELPHI. Рассмотрена специфика создания Windows-приложения с использованием визуального программирования. Пособие содержит практические задания с методическими рекомендациями по всем разделам курса. Для студентов очного и заочного отделений высших учебных заведений, получающих специальность 230700.62 — Прикладная информатика, а также всех изучающих объектно-ориентированное программирование.
Варфоломеева, Т.Н. Лабораторный практикум по объектно-ориентированному программированию : практикум / Т.Н. Варфоломеева, П.Ю. Ефимова. — 3-е изд., стер. — Москва : ФЛИНТА, 2019. — 74 с. - ISBN 978-5-9765-2042-4. - Текст : электронный. - URL: https://znanium.com/catalog/product/1065537 (дата обращения: 26.04.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Т.Н. Варфоломеева
И.Ю. Ефимова 

Лабораторный практикум  
по объектно-ориентированному 
программированию 

3-е издание, стереотипное

Москва
Издательство «ФЛИНТА»

2019 

УДК 327.016:004*40 
ББК  397
        В18

Р е ц е н з е н т ы : 

канд. техн. наук, доцент Магнитогорского государственного
технического университета  С.А. Повитухин

В18

Варфоломеева Т.Н.  
   Лабораторный практикум по объектно-ориентированному программированию [Электронный ресурс] / Т.Н. Варфоломеева, И.Ю. Ефимова. — 3-е изд., 
стер. — М. : ФЛИНТА, 2019. — 74 с. 

ISBN  978-5-9765-2042-4

В практикуме рассмотрена технология объектно-ориентированного програм
мирования (ООП). Приведены теоретические основы ООП и их реализация на
языке программирования DELPHI. Рассмотрена специфика создания Windowsприложения с использованием визуального программирования. Пособие содержит
практические задания с методическими рекомендациями по всем разделам 
курса.  

Для студентов очного и заочного отделений высших учебных заведений, 
получающих специальность 230700.62 — Прикладная информатика, а также
всех изучающих объектно-ориентированное программирование. 

УДК 327.016:004*40 
ББК 397 

ISBN  978-5-9765-2042-4
© Т.Н. Варфоломеева, И.Ю. Ефимова, 2014
© Издательство «ФЛИНТА», 2014

Оглавление 

Лабораторная работа по теме:   
Разработка приложения, с использованием линейных алгоритмов..................................................... 10 

Лабораторная работа по теме:   
Разработка приложения, с использованием разветвляющихся алгоритмов ....................................... 12 

Лабораторная работа по теме:   
Разработка приложения, с использованием строк................................................................................. 14 

Лабораторная работа по теме:   
Разработка приложения, с использованием компонент TStringGrid и TMainMenu........................... 18 

Лабораторная работа по теме:   
Разработка приложения, с использованием файлов.............................................................................. 20 

Лабораторная работа по теме:   
Разработка приложения, с использованием механизма инкапсуляции............................................... 22 

Лабораторная работа по теме:   
Разработка приложения, с использованием механизма наследования................................................ 24 

Лабораторная работа по теме:   
Разработка приложения, с использованием механизмов  наследование и полиморфизма ............... 25 

Лабораторная работа по теме:   
Разработка приложения, с применением компонентов, предназначенных для выбора  
из нескольких вариантов.......................................................................................................................... 27 

Лабораторная работа по теме:   
Разработка приложения, с использованием массивов........................................................................... 28 

Лабораторная работа по теме:   
Разработка приложения, с использованием  типизированных и текстовых файлов.......................... 32 

Лабораторная работа по теме:   
Разработка приложения, с использованием компонентов TMaskEdit и TMemo................................ 35 

Лабораторная работа по теме:   
Разработка приложения, с использованием динамических массивов ................................................. 36 

Лабораторная работа по теме:   
Разработка приложения, с использованием динамических  структур данных................................... 39 

Лабораторная работа по теме:   
Разработка приложения «Система проверки знаний»........................................................................... 41 

Приложение 1. Форма и ее основные характеристики................................................................ 43 

Приложение 2. Краткое описание некоторых компонент........................................................... 51 

Приложение 3. Приемы манипуляции компонентами на форме................................................ 62 

Приложение 4. Функции взаимного преобразования строк и чисел.......................................... 65 

Приложение 5. Функции вызова стандартных диалоговых окон с сообщениями.................... 67 

Литература................................................................................................................................................. 73 
 

Лабораторная работа по теме:  

Основные элементы визуальной среды DELPHI 

 
Цель лабораторной работы: изучить основные элементы визуальной среды 

DELPHI, освоить использование простейших компонентов DELPHI (TImage, TEdit, 

TButton), и создать приложение. 

Визуальная среда DELPHI 

 
При запуске DELPHI на экране появляется панель интерфейса, показанная на 

рисунке 1. Среда DELPHI визуально реализуется в виде нескольких одновременно 

раскрытых на экране монитора окон. Количество, расположение, размер и вид окон 

может изменяться программистом. 

 
 
Главное окно всегда присутствует на экране и предназначено для управления 

процессом создания приложения.  

 
Главное меню содержит все необходимые средства для управления проектом.  

 
Пиктограммы главного меню облегчают доступ к наиболее часто применяе
мым командам.  

3 

6 

4 

5

Рис. 1. Среда Delphi  
1 – главное окно; 2 — главное меню; 3 — пиктограммы главного меню; 
4 — окно Инспектора Объектов; 5 — окно Редактора Кода; 
6 — окно пустой Формы; 7 — Палитра Компонент 

1 

2 

7 

Палитра Компонентов обеспечивает доступ к набору библиотечных про
грамм среды DELPHI, которые описывают некоторый элемент (компонент), поме
щенный программистом в окно Формы. Каждый компонент имеет определенный 

набор свойств, которые программист может выбирать и изменять по своему усмот
рению (например, заголовок окна, надпись на кнопке, размер, цвет и тип шрифта  

и др). Свойства некоторых компонентов рассмотрены в приложениях. 

 
Окно Инспектора Объектов предназначено для изменения свойств выбран
ных компонентов и состоит из двух страниц. Страница Properties (Свойства) пред
назначена для изменения необходимых свойств компонента. Страница Events (Со
бытия) — для определения реакции компонента на то или иное событие (например, 

щелчок кнопки “мыши ”). 

 
Окно Формы представляет собой интерфейс проектируемого Windows
приложения. В это окно на этапе проектирования приложения помещаются необхо
димые компоненты, которые разработчик берет из Палитры Компонентов. Каждой 

Форме проекта соответствует модуль (Unit), текст которого  на языке Object Pascal 

размещается в окне Редактора Кода. 

 
Окно Редактора Кода предназначено для просмотра, создания и редактирова
ния текстов модулей проекта. При первоначальной загрузке в окне Редактора Кода 

находится текст модуля, содержащий минимальный набор операторов для нормаль
ного функционирования пустой Формы в качестве Windows-приложения. При раз
мещении некоторого компонента в окне Формы, текст модуля автоматически до
полняется необходимыми операторами.  

Создание Windows-приложения 

По умолчанию при запуске Delphi создается новая форма (пустая) и модуль к 

ней. Для создания интерфейса приложения необходимо на панели инструментов вы
брать нужные компоненты и расположить их на форме, затем с помощью Инспекто
ра объектов (Object Inspector) вкладка Properties настроить нужным образом свойст
ва формы и компонент. После этого необходимо написать обработчик события (ча
ще всего это обработчик события «Нажатия на кнопку»). 

Написание обработчика событий 

Обо всех происходящих в системе событиях, таких как создание Формы, на
жатие кнопки мыши или клавиатуры и т.д., ядро Windows информирует окна путем 

посылки соответствующих сообщений. Среда DELPHI принимает и обрабаты- 

вает сообщения  с помощью обработчиков событий (например, щелчок кнопки 

“мыши” — событие OnClick, создание Формы — OnCreate). Наиболее часто приме
няемые события представлены в таблице.  

 
Событие 
Описание события 

OnCreate 
 
Возникает при создании Формы. В обработчике данного события следует задавать действия, которые должны происходить в момент создания Формы, например установка начальных значений. 

OnClick 
Возникает при нажатии кнопки мыши в области компонента. 

OnDblClick 
Возникает при двойном нажатии кнопки мыши в области компонента 

OnKeyPress 
 
Возникает при нажатии клавиши на клавиатуре. Параметр Key имеет тип Char 
и содержит ASCII-код нажатой клавиши. Обычно это событие используется в 
том случае, когда необходима реакция на нажатие одной из клавиш. 

OnKeyDown 
Возникает при нажатии клавиши на клавиатуре. Обработчик этого события получает информацию о нажатой клавише и состоянии клавиш Shift, Alt и Ctrl, а 
также о нажатой кнопке мыши. 

 

 
Для создания обработчика события необходимо выбрать необходимый компо
нент — раскрыть список компонентов в верхней части окна Инспектора Объектов 

или выделить компонент на форме. Затем, на странице Events Инспектора Объектов, 

в списке событий выбрать нужное событие и дважды щелкнуть по нему. В ответ 

DELPHI активизирует окно Редактора Кода модуля и покажет заготовку процедуры 

обработки выбранного события. Для каждого обрабатываемого события в тексте 

модуля организуется процедура (procedure), между ключевыми словами begin и end 

которой программист на языке Object Pascal записывает требуемый алгоритм обра
ботки события.  

Переключение между окном Формы и окном Редактора Кода осуществляется 

кнопкой главного меню с пиктограммой  
  или клавишей F12. 

Сохранение проекта 

 
Delphi создает множество файлов, связанных с одной Winodows-программой. 

Многие из этих файлов создаются автоматически, когда строится приложение, неко
торые берутся из других источников (например, пиктограммы) или создаются самим 

программистом по ходу написания программы. Некоторые файлы создаются компи
лятором. Таким образом, программа будет состоять из файлов следующих типов: 

*.dpr — файл проекта программы — исходный текст на Pascal (создается ав
томатически); 

*.pas — файлы, содержащие исходные модули программы (в том числе моду
ли форм); 

*.dfm — текстовые файлы описания форм (информация о внешнем виде фор
мы). Генерируется средой разработки для каждой формы. Каждому файлу формы 

соответствует файл модуля (*.pas). 

*.res — файл ресурсов проекта — двоичный файл. Он создается автоматиче
ски для каждого проекта. В него Delphi помещает значок программы, пиктограммы, 

курсоры, номер версии и тому подобные данные.  

Также для каждого проекта создаются три вспомогательных файла (файлы на
стройки). В них сохраняются параметры настройки компилятора (*.cfg), проекта 

(*.dof) и среды (*.dsk). 

При внесении в проект изменений создаются резервные копии измененных 

файлов. Эти копии имеют расширения, начинающие символом ~ (тильда). Они со
держат состояние проекта до внесения изменений. 

В результате компиляции программы будет получен файл *.ехе программы.  

Каждый проект целесообразно хранить в отдельной, заранее созданной папке. 

Это значительно упростит перенос проекта в другую папку или на другую машину. 

Для сохранения проекта используйте в главном меню пункт File и опцию Save Al 

(Сохранить все). Старайтесь давать файлам  осмысленные имена вместо однообраз
ных Unit1 и Project1, предлагаемых DELPHI. 

Работа с приложением 

 
Для запуска созданного приложения нажмите пиктограмму 
 главного меню 

или клавишу F9. При этом происходит компиляция модулей и, если нет ошибок, 

компоновка проекта и создание выполняемого файла .exe. На экране появляется 

созданная форма приложения.  

 
Убедитесь в правильности работы созданного приложения. Завершить работу 

приложения можно нажатием кнопки 
 в правом верхнем углу панели интерфейса. 

 
В случае нештатного функционирования приложения восстановить первона
чальный режим работы с проектом можно путем выбора в меню Run опции Program 

Reset или нажать клавиши Ctrl+F2. 

 

Пример создания Windows-приложения  

 
Создадим программу, запрашивающую имя и в ответ на ввод выводящую при
ветствие. Для создания окна приложения будем использовать компоненты: TEdit,  

TLabel, TButton (см. Приложение 2). Интерфейс приложения может быть как на ри
сунке 2. 

 
При запуске Delphi автоматически создается новая форма. Новая Форма имеет одинаковые имя (Name) и заголовок (Сaption) — Form1. Для изменения заголовка в Инспекторе Объектов на странице Properties в свойстве Caption задайте заголовок Программа «Привет». Убедитесь, что заголовок окна формы изменился. Потянув за угол формы, подберите необходимый размер 
формы. 
Для нанесения надписей на Форму используется компонент TLabel (метка). Выберите в Палитре 
Компонент пиктограмму компонента TLabel и щелкните на ней “мышью”. Затем в нужном 
месте Формы щелкните “мышью” — появится надпись Label1. В свойстве Caption Инспектора Объектов задайте надпись «Введите имя». В свойстве Font подберите шрифт. Отрегулируйте местоположение компонента на Форме и его размер. 
Для создания поля для ввода имени используйте компонент TEdit. Разместите компонент TEdit в нужном месте Формы. При показе формы данное поле ввода должно быть 
пустым, поэтому очистите свойство Text. 
После ввода имени пользователь должен нажать на кнопку «Ввод» (компонент 
TButton). Найдите его пиктограмму и поместите кнопку на форму. Кнопке задайте надпись 
«Ввод» (свойству Caption). 
Для вывода приветствия  используйте компонент TLabel. При показе формы данная 
метка должна быть пустой и приветствие должно появиться только в ответ на ввод имени 
и нажатие кнопки Ввод. Поэтому свойство Caption данного компонента сначала должно 
быть пустым. Подберите подходящий шрифт, размер и местоположение на форме. 

Написание обработчика события нажатия кнопки 
Для написания процедуры обработки события нажатия кнопки «Ввод» необходимо 
дважды щелкнуть “мышью” на кнопке, после чего курсор установится в тексте процедурыобработчика 
события 
нажатия 
кнопки 
Button1: 
Procedure 
TForm1.Button1Click 
(Sender:TObject). В теле данной процедуры наберите следующие команды:  

procedure TForm1.Button1Click(Sender: TObject); 
Var Name:string;  // объявление локальных переменных 
begin 
   if Edit1.Text<>''   // если поле ввода непустое 
       then Name:=Edit1.Text //то  переменной Name присвоить имя введенное пользователем 

 
Рис. 2. 

else Name:=' Неизвестный  '; // иначе имя неизвестно 
   Label2.Caption:= ' Привет, ' + Name + '!'; // во вторую метку вывести приветственный текст 
end; 
Запустите приложение, убедившись в правильности его работы. 

Задание: Создайте программу «Психогеометрический тест». Для этого не
обходимо: 

– создайте форму, содержащую рисунки геометрических фигур (квадрат, треуголь
ник, круг, зигзаг, прямоугольник). Для размещения на форме изображения исполь
зуйте компонент TImage(см. Приложение 2); 

–  расположите на форме метку (компонент TLabel) для комментария с описанием 

соответствующего психотипа; 

– создайте обработчики событий для нажатий кнопкой мыши по компоненту TI
mage: при нажатии по выбранному рисунку в метке должен появляться текст с опи
санием психотипа:  

 
Квадрат — упорный, неутомимый труженик, мыслитель, рационалист, люби
тель порядка... 

 
Треугольник — энергичный, прагматик, лидер, честолюбив, нетерпелив... 

 
Зигзаг — творческий — «инакомыслящий», генератор идей, восторженный, 

эксцентричный, проповедник... 

 
Круг — коммуникатор, эмоционально отзывчивый, нерешительный... 

 
Прямоугольник — непоследовательный, непредсказуемый, любознательный, до
верчивый, наивный... 

Контрольные вопросы: 

1. Расскажите о структуре программы и используемых компонентов (их назначе
нии, свойствах). 

2. Среде программирования Delphi (основные окна и пункты меню). 

3. Перечислите основные типы файлов, используемые при создании Windows
приложения. 

Лабораторная работа по теме:  

Разработка приложения, с использованием линейных алгоритмов 

Цель лабораторной работы: освоить использование компонентов DELPHI для 

ввода/вывода данных, и создать приложение, с использованием линейных алгоритмов. 

Задание: Создайте приложение «Перевод величин», предназначенную  для 

перевода величины из одной меры в другую (по вариантам). 

Пары мер для перевода: 

1. Версты в метры (1 верста=1066,8 м) 

2. Футы в метры (1 фут=0,3048 м) 

3. Дюймы в см (1 дюйм=2,54 см) 

4. Фунты в кг (1 фунт=0,40951 кг) 

5. Мили в км (1 миля=1,609 км) 

6. Талоны в литры (1 талон=4,546 л) 

7. Кварты в литры (1 кварта=1,1365 л) 

8. Штофы в литры (1 штоф=1,2299 л) 

9. Караты в граны (1 карат=3,086 грана) 

10. Ярды в метры (1ярд=0,9144 м) 

Величина запрашивается и вводится с формы с помощью поля ввода (TEdit), 

развернутый ответ выводится на форму. Перевод однонаправленный.  

Пример использования компонент и их размещение Форме показано на рисунке 3. 

Разместив все необходимые компоненты на форме и задав начальные значения 

для их свойств, необходимо написать обработчик события «нажатие на кнопку Пе
ревод». При нажатии на кнопку «Перевод», должен осуществиться перевод из одной 

меры в другую.  

Label1 

Label2 

Label3 

Edit1 

Button1 

Рис. 3. 

В теле данного обработчика событий могут содержаться следующие действия: 

1. Описать переменные для хранения в них значений в первой мере и во второй. 

2. Считать в первую переменную значение, введенное пользователем в поле редак
тирования Edit1. Оно содержится в свойстве Text в строковом виде. Т.к. описанная 

переменная имеет числовое значение, для преобразования типа надо использовать 

функции взаимного преобразования строк и чисел: IntToStr, StrToInt, FloatToStr, 

StrToFloat. Информацию о данных функциях см. Приложение 3. 

3. Произвести пересчет значений по представленной формуле. Например: Из гран в 

граммы (1 гран = 0,0648 г).  

4. В метку Label2 (свойство Caption) записать полученное значение (преобразовав 

его обратно в строку) с соответствующим комментарием.  

Запустите созданное приложение. Проверьте его работу, для этого: введите 

значение и щелкните на кнопке «Перевод» и в метке Label3 должен появиться ре
зультат. Убедитесь, что при вводе новых значений отображаются новые результаты.  

Контрольные вопросы: 

1. Расскажите о назначении и свойствах используемых компонент. 

2. Расскажите о функциях взаимного преобразования строк и чисел. 

3. Сравните работу с приложением (консольным и Windows-приложением) с точки 

зрения пользователя и программиста.  

 
 

Доступ онлайн
90 ₽
В корзину