- •Тема 3 Структура vb-программ, классы и процедуры. Средства программирования алгоритмов линейной структуры
- •4.3.1. Структура простейших vb-программ
- •Операторы Imports…, импортирующие в программу компоненты библиотек, определяемые в импортируемом пространстве;
- •4.3.2. Создание и использование процедур пользователей
- •4.3.3. Передача параметров по значению (ByVal) и по ссылке (ByRef)
- •Используйте ByVal тогда, когда требуется, чтобы процедура не изменяла передаваемую в нее через аргумент переменную;
- •Создать проект c именем Пример 4.3.4-1.
- •Сохранить изменения.
- •Если окно Редактор кодаиз предыдущего примера не отображается в ide, следует сделать двойной щелчок мышью на кнопкеInputBoxформы на рис. 4.3.4-4.
- •Vb сохранит введенное значение в переменной FullName, а затем отобразит его в окне сообщения. Форма будет выглядеть, как на рис. 4.3.4-8.
- •Пример 4.3.4-4.Вычислить значения арифметических выражений и вывести на экран результаты вычислений.
- •Выполним запись арифметических выражений на языке vb:
- •Программный код показан на рис. 4.3.4-10.
- •Результат программы представлен на рис. 4.3.4-11.
- •Выполнить ту же задачу с использованием функций InputBox()иMsgBox( )(Рис. 4.3.4-12).
- •Код программы представлен на рис. 4.3.4-15.
- •4.3.5. Перегрузка методов (процедур)
- •Модификаторы, такие как ByVal илиByRef, которые применимы к элементу, или параметрам элемента;
- •Варианты индивидуальных заданий
- •Содержание отчёта
- •Графический интерфейс пользователя:
- •Учтите, что результаты текущей лабораторной работы должны совпасть с данными, приведенными на рис. 4.2.8-11.
- •Снова измените, программный код третьего проекта, убрав строку с описанием глобальных объектов (закомментируйте или удалите ее). Объясните возникшие ошибки при выполнив отладку проекта по шагам.
- •Т.Е. Определите: р– периметр треугольника иS– площадь треугольника. Ограничения на значения исходных данных и их
- •Одновременно.
- •Графический интерфейс пользователя:
- •Контрольные вопросы
Учтите, что результаты текущей лабораторной работы должны совпасть с данными, приведенными на рис. 4.2.8-11.
При выполнении каждого из проектов не забудьте назначить его запускаемым проектом.
Выполните первый проект по шагам с заходом в процедуру-функцию (<F11>), поставив точку останова после ввода исходных данных на операторе вызова функции. Обратите внимание на значения всех объектов в окнах ЛокальныеиВидимыепри заходе и выходе из процедуры-функции и возврате в точку вызова в событийной процедуре.
Удалите из текста процедуры-функции оператор Return zи снова выполните проект по шагам, обосновав результат.
Аналогичным образом выполните по шагам с заходом в процедуру второй проект, обращая внимание на значения входных и выходных параметров в окне Локальныепри заходе и выходе из процедуры.
Измените в заголовке процедуры параметр по ссылке на параметр по значению, вместо строки
Sub proc(ByVal x As Double, ByVal y As Double, ByRef z As Double) вставьте строку Sub proc(ByVal x As Double, ByVal y As Double, ByVal z As Double)
|
и снова выполните проект по шагам, обоснуйте результаты.
Точно таким же образом изучите с помощью отладчика по шагам работу третьего проекта.
Далее измените его программный код, добавив строку
Dim x As Double, y As Double, z As Double
внутрь событийной процедуры, при этом оставив такую же строку с описанием глобальных объектов (в самом начале программного кода модуля формы, перед описаниями всех процедур). Обоснуйте результат работы измененного программного кода, выполнив отладку проекта по шагам.
Снова измените, программный код третьего проекта, убрав строку с описанием глобальных объектов (закомментируйте или удалите ее). Объясните возникшие ошибки при выполнив отладку проекта по шагам.
Результаты выполнения трех проектов должны быть одинаковыми (рис. 4.3.7-8).
Рис. 4.3.7-8. Результаты выполнения Проекта 3.1.1
Доказательства правильности результатов:
Для доказательства правильности результатов выполните расчет арифметического выражения с использованием калькулятора или программы Microsoft Excel, сделайте вывод о том, что результаты, полученные вручную, подтверждают правильность выполнения программы.
Реализация 2-го задания:
Вычисления периметра и площади треугольника по заданным координатам трех его вершин.
Задание на разработку задачи:
Создайте приложение с именем Проект 3.4, для вычисления периметра и площади треугольника по заданным координатам трех его вершин: x1, y1; x2, y2; x3, y4.3.
Т.Е. Определите: р– периметр треугольника иS– площадь треугольника. Ограничения на значения исходных данных и их
соотношения: А>0, В>0, C>0, А+В>С, А+C>В, В+C>А
Одновременно.
Формализация и уточнение задания:
Для решения задачи существуют известные формулы:
Р = А + В + С;
S= (формула Герона);
A = ; B =;
C = .
Где Рр = Р/2 – полупериметр; A, B, C – стороны треугольника.
В соответствии с требованиями задания разобьем решение задачи на несколько отдельных задач и создадим процедуры пользователя, реализующие эти задачи:
процедуру-Function ДлинаОтрезка(), вычисляющую длину отрезка по координатам двух точек;
процедуру-Sub PS(), вычисляющую периметр и площадь треугольника;
процедуру- Function vvod() для ввода действительного числа из объекта типа TextBox;
процедуру-Sub vivod() для вывода действительного числа в объект типа TextBox.
Выбор типа процедуры (Function или Sub) определяется следующими критериями. Процедуры-функции Function предназначены для вычислений и могут быть частью выражения. Результатом выполнения процедуры-Function является значение какой-либо одной величины числового, строкового или логического типа, которое функция возвращает или через свое имя, или оператором Return. Следовательно, ДлинаОтрезка( ) и vvod( ) – это процедуры типа Function.
Если же процедура должна вычислить и возвратить несколько величин (PS()), или просто выполнить определенные действия, не возвращая никаких значений (vivod()), то такую процедуру следует оформить как процедуру-Sub.
Элементы, разрабатываемого проекта: