- •Ответственный за выпуск: Бивойно п.Г. , декан факультета электронных и информационных технологий, канд. Техн. Наук, доцент
- •Содержание
- •4.1.4 Разработка интерфейса проекта 66
- •5.1.7 Разработка интерфейса проекта 81
- •Введение
- •Лабораторная работа № 1. Знакомство с интегрированой средой разработки (иср)“Delphi 7”
- •Краткие теоретические сведения о иср “Delphi 7”
- •Конструктор стартовой формы
- •Главное окно иср “Delphi 7”
- •Главное меню
- •Панели инструментов
- •Палитра компонентов
- •Окно просмотра дерева объектов
- •Окно редактора кода
- •Закладка редактора кода модуля
- •Закладка редактора кода файла проекта
- •Окно Object Inspector
- •Закладка описания свойств объекта
- •События и процедуры обработки событий
- •Создание простейшего проекта
- •Разработка интерфейса проекта
- •Создание процедуры инициализации приложения
- •Создание процедуры вычисления результата
- •Улучшение проекта
- •Сохранение проекта
- •Продолжение работы с проектом на другом компьютере
- •Содержание отчета
- •Контрольные вопросы и задания
- •Рекомендованая литература
- •Лабораторная работа № 2. Вещественный тип данных. Расчеты по формулам
- •Краткие теоретические сведения
- •Язык программирования Object Pascal
- •Объекты, переменные и константы
- •Классы и типы
- •Объявление объектов и переменных
- •Вещественный тип данных
- •Выражение
- •Стандартные функции для данных вещественного типа
- •Инструкция присваивания
- •Форматирование результатов расчетов
- •Создание проекта «Расчет по формуле»
- •Создание интерфейса
- •Компонент ole-контейнер
- •Компонент Group Box
- •Компонент Memo
- •Завершение работы над интерфейсом
- •Создание процедур обработки событий Процедура очистки протокола
- •Процедура инициализации формы
- •Процедура выполнения расчета по формуле
- •Контольный пример
- •Трассировка процедуры
- •Содержание отчета
- •Контрольные вопросы
- •Рекомендованая литература
- •Лабораторная работа № 3. Подпрограммы Краткие теоретические сведения
- •Правила написания подпрограмм
- •Описание процедуры
- •Вызов процедуры
- •Описание функции
- •Вызов функции
- •Способы передачи параметров в подпрограммы
- •Передача параметров по значению
- •Передача параметров по наименованию
- •Расположение подпрограмм
- •Подпрограммы обработки событий класса формы
- •Другие подпрограммы класса формы
- •Размещение подпрограмм в модуле
- •Размещение подпрограмм в других модулях
- •Размещение подпрограмм внутри других подпрограмм
- •Область действия имен
- •Реализация проекта «Процедуры и функции»
- •Создание процедур и функций Процедуры инициализации
- •Процедура считывания коэффициентов уравнения
- •Функция для расчета по формуле
- •Использование дополнительного модуля
- •Завершение работы над проектом
- •Исследование созданного приложения
- •Анализ передачи параметров по наименованию
- •Анализ передачи параметров по значению
- •Содержание отчета
- •Контрольные вопросы
- •Операции над логическими данными
- •Логические выражения
- •Разветвляющиеся алгоритмы
- •Программирование разветвлений Условный оператор if…then…else
- •Оператор варианта case
- •Реализация проекта «Организация разветвлений»
- •Разработка интерфейса проекта
- •Компоненты для работы со списками
- •Процедуры обработки событий выбора из списка
- •Процедуры обработки событий onKeyPress
- •Решение квадратного уравнения
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 5. Построение циклов с инструкциями „while” и „repeat”
- •Краткие теоретические сведения
- •Циклические алгоритмы
- •Инструкция while…do
- •Инструкция repeat…until
- •Прерывание цикла
- •Итерационные алгоритмы
- •Пример итерационного алгоритма для вычисления кубического корня
- •Задание для самостоятельной работы
- •Алгоритмы вычисления сумм бесконечных рядов
- •Задание для самостоятельной работы
- •Создание проекта WhileRepeat
- •Разработка интерфейса проекта
- •Компоненты PageControl и TabSheet
- •Компонент CheckBox
- •Создание закладки для вычисления корня
- •Создание закладки для вычисления синуса
- •Создание процедур и функций Процедура для контроля ввода данных
- •Процедура вычисления кубического корня
- •Процедура вычисления синуса
- •Задания для расчетно-графической работы № 2
- •Содержание отчета
- •Контрольные вопросы
- •Целые типы данных
- •Символьные типы данных
- •Ограниченный тип данных.
- •Применение инструкции цикла for
- •Табулирование значений функций
- •Форматирование результатов при выводе таблиц
- •Строки символов
- •Операции над строками
- •Процедура Delete
- •Процедура Insert
- •Функция Pos
- •Функции Trim, TrimLeft, TrimRight
- •Создание проекта «Применение цикла for»
- •Разработка формы «Табулирование функции» Разработка интерфейса
- •Создание вспомогательных процедур и функций
- •Создание процедуры табулирования функции
- •Разработка формы «Таблица “символ-код”» Разработка интерфейса
- •Создание процедуры вывода таблицы символ-код
- •Разработка формы «Обработка последовательностей целых чисел»
- •Разработка интерфейса
- •Создание процедуры обработки последовательности целых чисел
- •Создание многодокументной (mdi)формы
- •Задание для самостоятельной работы
- •Содержание отчета
- •Контрольные вопросы
- •Рекомендованая литература
Использование дополнительного модуля
Для того, чтобы в основном модуле можно было воспользоваться функцией расположенной в дополнительном модуле, следует, прежде всего, дополнить инструкцию uses основного модуля, добавив туда ссылку на модуль UnitDop.
Обрабатывая инструкцию uses, компилятор дойдет до ссылки на модуль UnitDop и начнет искать файл UnitDop.dcu. Прежде всего, поиск будет производиться в папке, где расположен проект и форма, но если там модуля нет, то компилятору необходимо подсказать, где искать этот файл.
В этом случае ызовите диалог настройки путей, вызвав функцию главного меню Project→Options, откройте в нем закладку Directories/Conditionals, и в строке Search Path укажите путь к папке, где расположен модуль.
Завершение работы над проектом
Для проверки работоспособности процедуры ввода коэффициентов и функции расчета по формуле, описанной в дополнительном модуле, напишем процедуру обработки события onClick для кнопки «Выполнить расчет. Процедура представлена на рисунке 3.9.
Рисунок 3.29 – Главная процедура с вызовом вспомогательной процедуры и функции
Исследование созданного приложения
-
Анализ передачи параметров по наименованию
Настройте режим пошагового выполнения процедуры для вычисления корней уравнения и проанализируйте значения коэффициентов уравнения до и после вызова процедуры getKoef.
Уберите префикс var в списке параметров процедуры getKoef и снова проанализируйте значения коэффициентов уравнения до и после вызова процедуры getKoef.
Восстановите заголовок процедуры.
Сделайте вывод и зафиксируйте в отчете.
-
Анализ передачи параметров по значению
Измените функцию расчета по формуле таким образом, чтобы после вычисления результата значения формальных параметров изменялись, например, становились нулями.
Проверьте в пошаговом режиме, будут ли меняться значения фактических параметров после обращения к измененной функции.
Восстановите текст функции.
Сделайте вывод и зафиксируйте в отчете.
Содержание отчета
-
Наименование работы.
-
Цель работы.
-
Краткое описание понятий процедура и функция.
-
Перечень возможных вариантов расположения подпрограмм и влияние расположения на видимость подпрограмм.
-
Способы передачи параметров в подпрограммы.
-
Тексты своих процедур setKoef и getKoef.
-
Текст дополнительного модуля для своей формулы.
-
Расчетная формула и контрольные примеры.
-
Результаты тестирования проекта на контрольных примерах в виде копии экрана с протоколом выполненных расчетов.
-
Результаты исследования способов передачи параметров в подпрограммы.
-
Выводы.
Контрольные вопросы
-
Что такое процедура. Описание процедуры.
-
Что такое функция. Описание функции.
-
Варианты расположения подпрограмм и их особенности.
-
Что такое область видимости имен и от чего зависит видимость имени.
-
Способы передачи параметров в подпрограммы.
-
Как создать и использовать дополнительный модуль.
-
Написать подпрограмму по заданию преподавателя и рационально расположить ее в приложении.
Рекомендованая литература
-
Культин Н. Delphi 6. Программирование на Object Pascal. – СПб.:БХВ-Петербург,2002.
-
Ставровский А.Б. Турбо Pascal 7.0/ Учебник. – К.: BHV, 2000.
-
Лабораторная работа № 4. Логический тип данных и разветвления в программах
Цели работы:
-
Познакомиться с логическим типом данных.
-
Познакомиться с логическими операциями.
-
Научиться записывать и вычислять логические выражения.
-
Познакомиться с инструкциями if … then … else и case … of.
-
Ознакомиться с компонентами, которые обеспечивают возможность выбора вариантов.
-
Создать приложение, реализующее разветвляющееся алгоритмы.
Краткие теоретические сведения
-
Логический тип данных
Тип Boolean используется для данных, которые могут принимать только два значения – истина и ложь. В языке Object Pascal этим значениям соответствуют константы True и False.
Данные такого типа обычно появляются как результат операций сравнения, и в некоторых других случаях. Например, результатом вычисления выражения 2<3 будет True, а результат вычисления выражения sin(x)>0 может быть и True и False, в зависимости от значения переменной х.
В таблице 4.1 приведены операции сравнения, определенные в языке Object Pascal.
-
Таблица 4.1 - Операции сравнения
Название операции сравнения
Запись на языке Object Pascal
Меньше
<
Меньше или равно
<=
Больше
>
Больше или равно
>=
Равно
=
Не равно
<>