RUSSIAN

Практическая реализация Delphi: методическое пособие

Book information

Publisher
ЭБС Лань
Year
2006
Language
russian
Format
PDF
Filesize
705 kB (721411 bytes)
Pages
\48
Time added
2022-10-27 07:29:23

Description

Методическое пособие предназначено для изучения Delphi – среды визуального программирования с расширениями, характерными для объектно-ориентированного программирования. Пособие предназначено студентам физико-математического факультета, может быть использовано при изучении курса «Программирование» в высшей школе и соответствующих тем курса «Информатика» в средней школе Практическая реализация Delphi Методическое пособие Уфа 2006 Методическое пособие предназначено для изучения Delphi – среды визуального программирования с расширениями, характерными для объектно-ориентированного программирования. Пособие содержит краткое описание среды и цикл лабораторных работ, которые содержат теоретический материал и примеры программ по теме, контрольные вопросы, позволяющие выяснить готовность студентов к работе, и задания в 15 вариантах. Пособие предназначено студентам физико-математического факультета, может быть использовано при изучении курса «Программирование» в высшей школе и соответствующих тем курса «Информатика» в средней школе. Р.Ф.Маликов, д-р ф.-м. н., проф. Введение Delphi является средой разработки, которая использует многие передовые идеи и концепции, заложенные в графическом интерфейсе пользователя Windows. Delphi дает возможность использовать язык Object Pascal в среде визуального программирования с расширениями, характерными для объектно-ориентированного. Подобная комбинация позволяет быстро разрабатывать эффективные программы. Данное учебное пособие является продолжением пособия “Работа в среде Delphi”. Если в предыдущем довольно подробно разобрана среда программирования, рассмотрены примеры по применению компонентов, программированию их свойств и событий, то в предлагаемом пособии сделан упор на работу с базовыми структурами, массивами данных, строками, файлами и на программировании графики. Пособие содержит (кроме краткого описания среды) цикл лабораторных работ: Программирование алгоритмов линейной структуры, Программирование алгоритмов разветвляющейся структуры, Программирование алгоритмов циклической структуры, Работа с массивами, Работа со строками, Работа с файлами, Работа с графикой в Delphi. В начале каждой работы изложен теоретический материал, знакомство с которым поможет выполнить задания, приведены практические примеры. Контрольные вопросы позволят проверить готовность к выполнению лабораторной работы. Задания к лабораторным работам приведены по вариантам, в нескольких уровнях сложности. Пособие может быть полезно при изучении курса “Программирование” в высшей школе и соответствующих тем курса “Информатика” в средней. Панель компонентов содержит все компоненты, разбитые на группы. Название модуля и файла должны совпадать. Модуль состоит из трех частей: Interface, Implementation, инициирующая часть. Interface.В этой части задаются названия подключаемых модулей, глобальных констант, переменных и типов. Также указываются названия функций и процедур, которые будут доступны в других модулях и основной программе. Существует еще один модуль Main, который подключается с помощьюUses; Определена const N=1; описан целочисленный массив а от 0 до 5 и функция f(x). Эти константы, типы и переменные глобальны (будут действительны как в этом модуле, так и в других модулях, которые используют этот модуль). В части Implementation также приводится текст функций и процедур, название которых было задано в части Interface. Примечание. Если в этой части набран текст функции или процедуры, не представленной в части Interface, то данная функция или процедура будет локальной. Локальные константы, переменные, типы, функции и процедуры могут использоваться только внутри данного модуля. Инициирующая часть. В этой части помещают команды, которые должны выполняться при первом вызове данного модуля. На практике данный подход используется редко, поэтому обычно после Implementation сразу ставится end (без begin). Функции и процедуры – это набор команд, имеющих свое имя. Текст процедуры или функции пишется один раз в разделе определения процедур и функций, затем можно вызывать их многократно по имени. Функция отличается от процедуры тем, что она Результат функции F имеет вещественный тип, параметр x также вещественного типа. Между begin и end-текст функции. Для функций и процедур параметры можно задавать в двух местах: В этом случае эти константы, переменные и типы будут действительны только внутри данной функции или процедуры. 2) если использованы одинаковые названия как внутри функции или процедуры, так и в частях Interface и Implementation, то последние будут игнорироваться внутри функции и процедуры. Существует два способа, по которым процедура может возвращать ответ в основную программу: 1) Через переменные, объявленные в частях Interface и Implementation. 2) В скобках после названия процедуры можно перечислять параметры с командой var. Через них можно возвращать ответ. В Delphi имеется множество различных типов данных. Характеристики типов зависят от версий Delphi. Ниже приведены варианты для Delphi 2: Имя Integer используется для обозначения какой-либо порядковой числовой величины. Тип integer имеет длину 2 байта и хранит значения порядкового числительного со знаком в диапазоне от –32768 до 32767. К типу Integer относятся также Shortint, Longint, Byte, Word. Переменные, объявленные как данные типа Real, хранят действительные или вещественные числа. Стандартный тип данных real имеет длину 6 байт и поддерживает диапазон значений от (2,9*10-39) до (1б7*1038). К другим действительным типам относятся: Single, Double, Extended, Comp. В Delphi предпочтительно использовать тип Extended c диапазоном от (-263+1) до (263-1). Он имеет длину 10 байт. Тип данных Boolean хранит только 2 значения: True(«истина») или False(«ложь») и имеет длину 1 байт. Для совместимости с другими языками Delphi предлагает следующие булевы типы: ByteBool, WordBool, LongBool. Тип данных Char хранит числовые представления символов ASCII, имеет длину 1 байт. Строковый тип данных String имеет переменную длину от 1 до 255 символов. Тип данных Pointer является 4-байтовой комбинацией селектора и смещения, указывающей на переменную произвольного типа. Тип данных PChar является указателем на строку символов, оканчивающихся символом NULL. Этот тип введен для совместимости с внешними функциями (в отличие от языка Pascal строки Windows и языка C не имеют байта длины и для определения конца строки необходимо просматривать весь массив символов до обнаружения символа NULL ). Если в программе используется значение, которое не должно меняться, его необходимо определять в качестве константы. Константы определяются в разделе описания констант: В Delphi используется множество имен констант, встроенных непосредственно в среду. Префиксное соглашение об именах приведено в таблице: В Delphi, кроме стандартных функций преобразований типов из Паскаля используются функции преобразования типов данных принимающих компонентов (на примере компонента Edit): Внутри одного составного оператора может находиться другой составной оператор. В этом случае end будет относиться к ближайшему begin. Селектор - переменная или выражение ординального типа. Обычно - целый, символьный тип (но не вещественный). Если значение селектора равно значению из списка констант1, то выполняется оператор1, если значению из списка констант2, выполняется оператор2 и т. д. Если значение селектора не совпадает ни с одним из данных значений, то выполняется оператор, стоящий после else. Пример 1. Вычислить значение функции y при заданных значениях аргумента: Задание №2. Модифицировать программу таким образом, чтобы вычислялось многократно значение функции при изменении аргумента в указанном диапазоне с заданным шагом. Организовать вывод значения аргумента и вычисленного значения функции в виде таблицы. Операторы выполняются один раз, затем вычисляется условие; если результат вычисления условия ложен, то команды выполняются еще раз и так до тех пор, пока результат вычисления условия не станет истинным. Операторы с постусловием применяются тогда, когда необходимо выполнение команд до тех пор, пока условие не станет истинным. Пока условие истинно, оператор выполняется. 4.2. Лабораторная работа №3 Массив – это упорядоченный набор однотипных данных. Тип массива описывается в разделе описания типов данных, переменная типа массив описывается в разделе описания переменных со ссылкой на тип. Описан массив a, состоящий из 6 чисел целого типа и двумерный массив в, состоящий из 6 строк и 4 столбцов (всего 24 числа целого типа). В Delphi для ввода и вывода массивов используется компонент StringGrid, поэтому работа с массивами в Delphi сильно отличается от работы в Pascal и Basic. Например, А (0,1) - первый столбец, вторая строка. В компоненте StringGrid все элементы хранятся в свойстве cells. Свойство cells имеет тип String, поэтому при вводе элементов массива необходимо использовать команды StrToInt, FloatToInt, а при выводе - IntToStr, FloatToStr, FloatToStrF. В компоненте StringGrid есть свойства FixedCols и FixedRows - фиксированные столбцы и строки. По умолчанию значение этих свойств = 1. При работе с массивами их необходимо обнулять. Количество строк и столбцов в StringGrid задаются в свойствах RowCount и ColCount. Для работы со строками используется тип String. Обычно переменная типа String вмещает текст длиной до 255 символов. Процедура Insert позволяет вставить текст 'что' в текст 'куда', начиная с позиции 'номер'. Вместо 'что' можно писать константы, переменные и выражения строкового типа. Вместо 'куда' можно писать ТОЛЬКО переменные строкового типа. Вместо 'номер' можно писать константы, переменные и выражения целого типа. Позволяет удалять часть содержимого переменной 'откуда', начиная Преобразует численное значение в строку сисмволов и запоминает результат в строке. Преобразует значение строки к целому или действительному значению и запоминает его в числе. Код равен нулю, если число в строке записано правильно, иначе в коде записывается позиция ошибочного символа, при этом число не определено. На форме помещаем Edit1 (для ввода текста), Label1 (для вывода результата). Если в задании требуется ввести несколько строк текста, то используются компоненты Memo и RichEdit. Для работы с несколькими строками текста нужно: На форму поместим Memo1 (для ввода текста), Label1 (для вывода результата), кнопку “Выполнить” и кнопку “Выход”. Обработчик события Button2.Click будет следующим: Execute - это функция логического типа. Если в соответствующей диалоговой панели была нажата кнопка “Отмена”, то функция возвращает значение False, При нажатии на кнопку “Ok” значение функции будет равно True. Компонент OpenDialog. Данный компонент позволяет выбрать файл для его открытия. На диалоговой панели высвечивается информация о текущей папке, список файлов, название выбранного файла, шаблон имен файлов и т.д. в стиле Windows 98. При желании можно создать данное окно самостоятельно, при этом будет использовано 15 визуальных компонентов. Свойство DefanltExt создает расширение файла по умолчанию (если при наборе имени пользователь не указал расширение, то оно добавляется автоматически). Свойство FileEditStyle определяет тип строки редактирования для ввода имени файла - редактор (fsEdit) или список (fsComboBox). Свойство Filter позволяет задать шаблон имен файлов, выводимых в панели. Можно определить одновременно несколько фильтров. Двойной щелчок в Инспекторе Объектов вызывает Редактор фильтров Filter Editor, Если свойство Filter не задано, список файлов будет пустым. Пример фильтра -'Все файлы*.*'. В свойстве InitialDir хранится название рабочего каталога. Название выбранного файла находится в свойстве FileName. В свойстве Options находится ряд опций панели - свойств типа Boolean. Опция подключена, если ее значение Тruе и отключена при значении False. Наиболее важные из них (некоторые опции даны и для компонента SaveDialog) - ofAllowMultiSelect -позволяет выбрать несколько файлов одновременно, ofCreatePrompt - если файл с указанным именем не существует, будет произведен запрос на его создание, ofFileMustExist -позволяет выбрать только существующие файлы, ofNoChangeDir -запрещает изменение каталога, ofOwerWritePrompt - запрашивает подтверждение на сохранение уже существующего файла, ofReadOnly - делает флажок Read Only (только для чтения) помеченным при появлении, ofNoReadOnlyRetum – запрещает выбор файла только для чтения. Свойство Title задает текст заголовка панели. У компонентов OpenDialog и SaveDialog список событий отсутствует. Команды для выполнения операций над выбранными файлами (их открытие или сохранение) программируются самостоятельно. Данные диалоговые панели позволяют только выбрать файл для последующей работы. В свойстве FindText хранится текст для последующего поиска. Событие OnFind происходит при нажатии клавиши FindNext в диалоговом окне. Внутри обработчика событий должен находится код для поиска текста. В свойстве Options заданы опции панели. В основном эти опции влияют на включение в панель дополнительных сервисных кнопок. Недостаток. Можно работать только с некоторыми конкретными типами файлов. Если в файле должны использоваться одновременно целые, вещественные числа и слова, то необходимо использовать текстовый файл. Если в файле используются только целые, вещественные числа или слова ( т.е. элементы одного типа), то можно использовать типизированный файл. Если нужно шифрование данных или обеспечение секретности данных, то используют нетипизированные файлы. Достоинства текстовых файлов: Достоинства типизированных файлов: Если путь не указывается, то файл ищется в папке с проектом Delphi. Если вместо имени написать ‘prn:’, то файловая переменная связывается с принтером. Файл можно открыть или только для записи (сохранения), или только для чтения, или только для добавления новой информации. При использовании команды Rewrite старый файл уничтожается. При использовании команды Append старый файл остается в неприкосновенности, а новая информация записывается в конец файла. Эти команды используются для чтения информации из файла. Список – список переменных, значения которых находятся в файле. Переменные разделяются запятыми, их значения в файле разделяются пробелами. В текстовых файлах Delphi автоматически определяет тип значений, то есть команды IntToStr или StrToInt не нужны. В текстовых файлах для команды Read курсор остается на той же строке, что и информация, для команды Readln – переходит на следующую строку. В типизированных файлах вторая команда не используется. Для записи информации используются команды: Список – список выражений, констант и переменных, разделенных запятой. Тип значения определяется автоматически. Команда Writeln после ввода информации переносит курсор на следующую строку. В типизированных файлах команда Writeln не используется. Если не использовать эту команду, то информация в файле может быть потеряна. В Turbo Pascal эта команда называется Close. Задание №1. Составить программу решения задачи с использованием переменных файлового типа. Задание №2. Задание имитирует работу “электронной почты”. Отправитель составляет программу, в которой формирует внешний файл “письмо”. Получатель составляет две программы. Первая программа позволяет прочесть послание, а вторая формирует внешний файл “ответ”. При работе с графическими изображениями в Delphi необходимо определять реакцию на событие OnPaint. В обработчике данного события пишут код, который должен перерисовывать рисунок в случае его пропажи. Причиной пропажи может послужить переход формы из невидимого состояния в видимое (например, свертывание и развертывание окна) или временное закрытие рисунка другим объектом. Создать проект. Используется свойство формы Canvas и метод Draw. Рисование изображения происходит при событии OnPaint. Для объекта класса TBitMap определены методы Create, LoatFromFile и Free. В текущем каталоге проекта должен быть графический файл Primer.bmp. Пример. Нарисовать на компоненте PaintBox1 прямоугольник красного цвета с зеленой границей. Толщина линии границы – 5 пиксел. Создать проект. Поместить на форму компонент PaintBox (группа System), событию OnPaint присвоить значение True. Используются свойства компонента PaintBox1 Canvas, его свойства Brush, Color, Pen, Width и команда Rectangle. Для построения графика функции необходимо привести декартовы координаты к графическим. Для этого вычислим масштаб и сдвиг для х и у (Mx, Sx, My, Sy), решая следующие системы уравнений: Ниже приведен обработчик события “Щелчок по кнопке «Выполнить»”, реализующий построение графика функции х2 +2х – 3 в заданном промежутке с заданным шагом. Результат работы программы для функции x2 +2x -3= 0, в промежутке [-5;5] с шагом 0.01 . Содержание Введение………………………………………………………………..3 Лабораторная работа № 1….……………………………………14 Практическая реализация Delphi Методическое пособие Редактор Т.В.Подкопаева

Similar books

Методические рекомендации по улучшению качества молока: для направлений подготовки бакалавров 19.03.03 «Продукты питания животного происхождения» профиль «Технология молока и молочных продуктов», 15.03.02 «Технологические машины и оборудование» профиль « Машины и аппараты пищевых производств», 36.03.02 «Зоотехния» Профиль «Технология производства продуктов животноводства». Для направлений подготовки магистров: 27.04.01 «Стандартизация и метрология» магистерская программа «Стандартизация и сертификация в пищевой промышленности

Методические рекомендации по улучшению качества молока: для направлений подготовки бакалавров 19.03.03 «Продукты питания животного происхождения» профиль «Технология молока и молочных продуктов», 15.03.02 «Технологические машины и оборудование» профиль « Машины и аппараты пищевых производств», 36.03.02 «Зоотехния» Профиль «Технология производства продуктов животноводства». Для направлений подготовки магистров: 27.04.01 «Стандартизация и метрология» магистерская программа «Стандартизация и сертификация в пищевой промышленности

2015 · PDF

Водный транспорт леса: методические указания к выполнению курсовой работы «Организация первоначального плотового лесосплава» для студентов бакалавриата направления подготовки 35.03.02 «Технология лесозаготовительных и деревоперерабатывающих производств», профиль «Лесоинженерное дело» всех форм обучения: Методические указания к выполнению курсовой работы «Организация первоначального плотового лесосплава» для студентов бакалавриата направления подготовки 35.03.02 «Технология лесозаготовительных и деревоперерабатывающих

Водный транспорт леса: методические указания к выполнению курсовой работы «Организация первоначального плотового лесосплава» для студентов бакалавриата направления подготовки 35.03.02 «Технология лесозаготовительных и деревоперерабатывающих производств», профиль «Лесоинженерное дело» всех форм обучения: Методические указания к выполнению курсовой работы «Организация первоначального плотового лесосплава» для студентов бакалавриата направления подготовки 35.03.02 «Технология лесозаготовительных и деревоперерабатывающих

2020 · PDF

Определенный интеграл по фигуре от скалярной функции. Практическая часть: пособие для студентов специальностей 1-70 01 01 «Производство строительных изделий и конструкций»; 1-70 02 01 «Промышленное и гражданское строительство»; 1-70 02 02 «Экспертиза и управление недвижимостью»; 1-70 03 01 «Автомобильные дороги»; 1-70 03 02 «Мосты, транспортные тоннели и метрополитены»; 1-70 04 01 «Водохозяйственное строительство»; 1-70 04 02 «Теплогазоснабжение, вентиляция и охрана воздушного бассейна»; 1-70 04 03 «Водоснабжение, водоотведение и охрана водных ресурсов» и 1-70 07 01 «Строительство тепловых и атомных электростанций»

Определенный интеграл по фигуре от скалярной функции. Практическая часть: пособие для студентов специальностей 1-70 01 01 «Производство строительных изделий и конструкций»; 1-70 02 01 «Промышленное и гражданское строительство»; 1-70 02 02 «Экспертиза и управление недвижимостью»; 1-70 03 01 «Автомобильные дороги»; 1-70 03 02 «Мосты, транспортные тоннели и метрополитены»; 1-70 04 01 «Водохозяйственное строительство»; 1-70 04 02 «Теплогазоснабжение, вентиляция и охрана воздушного бассейна»; 1-70 04 03 «Водоснабжение, водоотведение и охрана водных ресурсов» и 1-70 07 01 «Строительство тепловых и атомных электростанций»

PDF

Студенческая наука для развития информационного общества : сборник материалов VI Всероссийской научно-технической конференции (Ставрополь, 22-26 мая 2017) : [в 2-х томах] / Министерство образования и науки Российской Федерации, Институт информационных технологий и телекоммуникаций Северо-Кавказского федерального университета (г. Ставрополь), Институт компьютерных технологий и информационной безопасности Инженерно-технологической академии Южного федерального университета (г. Таганрог), Ростовский государственный экономический университет (РИНХ) (г. Ростов-на-Дону)

Студенческая наука для развития информационного общества : сборник материалов VI Всероссийской научно-технической конференции (Ставрополь, 22-26 мая 2017) : [в 2-х томах] / Министерство образования и науки Российской Федерации, Институт информационных технологий и телекоммуникаций Северо-Кавказского федерального университета (г. Ставрополь), Институт компьютерных технологий и информационной безопасности Инженерно-технологической академии Южного федерального университета (г. Таганрог), Ростовский государственный экономический университет (РИНХ) (г. Ростов-на-Дону)

PDF

Молодежная наука - развитию агропромышленного комплекса : материалы Всероссийской (национальной) научно-практической конференции студентов, аспирантов и молодых ученых, г. Курск, 3-4 декабря 2020 г. / Министерство сельского хозяйства Российской Федерации, Ассоциация аграрных вузов Центрального федерального округа, Комитет агропромышленного комплекса Курской области, Федеральное государственное бюджетное образовательное учреждение высшего образования "Курская государственная сельскохозяйственная академия имени И. И. Иванова", Совет молодых ученых ФГБОУ ВО Курская ГСКА ; редакционная коллегия: Харченко Е. В. (председатель) [и др.]

Молодежная наука - развитию агропромышленного комплекса : материалы Всероссийской (национальной) научно-практической конференции студентов, аспирантов и молодых ученых, г. Курск, 3-4 декабря 2020 г. / Министерство сельского хозяйства Российской Федерации, Ассоциация аграрных вузов Центрального федерального округа, Комитет агропромышленного комплекса Курской области, Федеральное государственное бюджетное образовательное учреждение высшего образования "Курская государственная сельскохозяйственная академия имени И. И. Иванова", Совет молодых ученых ФГБОУ ВО Курская ГСКА ; редакционная коллегия: Харченко Е. В. (председатель) [и др.]

PDF

Студенческая наука для развития информационного общества : сборник материалов VI Всероссийской научно-технической конференции (Ставрополь, 22-26 мая 2017) : [в 2-х томах] / Министерство образования и науки Российской Федерации, Институт информационных технологий и телекоммуникаций Северо-Кавказского федерального университета (г. Ставрополь), Институт компьютерных технологий и информационной безопасности Инженерно-технологической академии Южного федерального университета (г. Таганрог), Ростовский государственный экономический университет (РИНХ) (г. Ростов-на-Дону)

Студенческая наука для развития информационного общества : сборник материалов VI Всероссийской научно-технической конференции (Ставрополь, 22-26 мая 2017) : [в 2-х томах] / Министерство образования и науки Российской Федерации, Институт информационных технологий и телекоммуникаций Северо-Кавказского федерального университета (г. Ставрополь), Институт компьютерных технологий и информационной безопасности Инженерно-технологической академии Южного федерального университета (г. Таганрог), Ростовский государственный экономический университет (РИНХ) (г. Ростов-на-Дону)

PDF

Студенческая наука для развития информационного общества : сборник материалов VII Всероссийской научно-технической конференции (г. Ставрополь, 26-28 декабря 2017 года) : [в 2-х томах] / Министерство образования и науки Российской Федерации Северо-Кавказского федерального университета (г. Ставрополь), Институт компьютерных технологий и информационной безопасности Инженерно-технологической академии Южного федерального университета (г. Таганрог), Поволжский государственный университет телекоммуникаций и информатики (г. Самара), Ростовский государственный экономический университет (РИНХ) (г. Ростов-на-Дону)

Студенческая наука для развития информационного общества : сборник материалов VII Всероссийской научно-технической конференции (г. Ставрополь, 26-28 декабря 2017 года) : [в 2-х томах] / Министерство образования и науки Российской Федерации Северо-Кавказского федерального университета (г. Ставрополь), Институт компьютерных технологий и информационной безопасности Инженерно-технологической академии Южного федерального университета (г. Таганрог), Поволжский государственный университет телекоммуникаций и информатики (г. Самара), Ростовский государственный экономический университет (РИНХ) (г. Ростов-на-Дону)

PDF

Материалы международного форума "Кавказ в начале XXI века: роль публичной дипломатии в противодействии терроризму", Пятигорск, 13-16 ноября 2017 года : International forum "The Caucasus at the beginning of the XXI century: the role of public diplomacy in countering terrorism" : научное издание : [в 2 т.] : 16+ / Министерство образования и науки Российской Федерации, "Северо-Кавказский федеральный университет", Институт сервиса, туризма и дизайна (филиал) СКФУ в г. Пятигорске ; [под ред. Т. А. Шебзуховой и др.]

Материалы международного форума "Кавказ в начале XXI века: роль публичной дипломатии в противодействии терроризму", Пятигорск, 13-16 ноября 2017 года : International forum "The Caucasus at the beginning of the XXI century: the role of public diplomacy in countering terrorism" : научное издание : [в 2 т.] : 16+ / Министерство образования и науки Российской Федерации, "Северо-Кавказский федеральный университет", Институт сервиса, туризма и дизайна (филиал) СКФУ в г. Пятигорске ; [под ред. Т. А. Шебзуховой и др.]

PDF