- •Содержание
- •Лабораторна робота № 1. Оболонка системи програмування visual basic. Заняття 1
- •1. Запустите Visual Basic и произведите необходимую настройку.
- •2. Задайте различные свойства формы:
- •3. Запустите программу на выполнение.
- •17. Запустите программу на выполнение и проверьте ее работу.
- •20. Сохраните проект на рабочем диске.
- •Лабораторна робота № 1.Этапи розробки windows-додатків в середовищі програмування visual basic (на прикладі створення простого додатку). Заняття 2.
- •1. Постановка задачи
- •3. Напишите программные коды
- •4. Отладьте6 программу
- •Завдання до самостійної роботи № 1 (в,лс,вс).
- •I. Содержательная постановка задачи.
- •II. Математическая постановка задачи.
- •III. Разработка пользовательского интерфейса.
- •Лабораторна робота № 2. Дані в visual basic. Типи даних.
- •Завдання на самостійну (в) й практичну роботу (вс, лс)
- •Лабораторна робота № 3. Область видимості змінної.
- •ИмяФормы. ИмяПеременной
- •Лабораторна робота № 4. Арифметичні вырази й вбудовані функції visual basic
- •Лабораторная работа № 5. Введення-виведення даних. Функція inputbox и msgbox. Вікно й функція inputbox.
- •Лабораторна робота №6. Проектування додатків vb6, що містять лінійні алгоритмічні структури
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота № 7. Проектування додатків vb6, що містять галужені алгоритмічні структури. Заняття 1
- •Завдання на самостійну (в) й практичну роботу (вс, лс)
- •Лабораторна робота 7. Проектування додатків vb6, що містять галужені алгоритмічні структури. Заняття 2
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №8. Проектування додатків vb6, що містять циклічні алгоритмічні структури. Заняття 1. Цикли з лічильником
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №8. Проектування додатків vb6, що містять циклічні алгоритмічні структури. Заняття 2. Цикли з умовою
- •Завдання на самостійну роботу(в,вс,лс)
- •Завдання на практичну роботу (вс,лс)
- •Лабораторна робота №9. Проектування додатків vb6, що містять вкладені циклічні алгоритмічні структури. Заняття 1.
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №9. Проектування додатків vb6, що містять вкладені циклічні алгоритмічні структури. Заняття 2
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №10. Проектування додатків vb6, у яких дані організовані у вигляді одновимірних масивів. Заняття 1.
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №10. Проектування додатків vb6, у яких дані організовані у вигляді одновимірних масивів. Заняття 2
- •Завдання на самостійну (в) й практичну роботу (вс,лс)
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №10. Проектування додатків vb6, у яких дані організовані у вигляді одновимірних масивів. Заняття 3. Сортування елементів масиву. Обмін значеннями.
- •Ilорядок действий
- •Завдання на самостійну роботу(в,вс,лс)
- •Завдання на практичну роботу(вс,лс)
- •Лабораторна робота №11. Проектування додатків vb6, у яких дані організовані у вигляді двовимірних масивів
- •Завдання на самостійну роботу(в, вс,лс)
- •Завдання на практичну роботу (вс,лс)
- •Завдання на самостійну роботу(вс,лс)
- •Лабораторна робота №12. Проектування додатків vb6, у яких дані організовані у вигляді структур. Користувальницький тип даних.
- •VbExclamation, "Столько друзей не бывает"
- •VbExclamation, "Поиск не дал результатов"
- •VbExclamation, "Поиск не дал результатов"
- •Мid(Друзья(j).BirthDay, 4, 2) завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №13. Модульне програмування. Заняття 1.
- •Завдання на самостійну (в) та практичну роботу (вс,лс) завдання с13.4
- •Лабораторна робота №13. Модульне програмування. Заняття 2
- •InputВох("Задайте любой вопрос", "????")
- •Завдання на самостійну (в) й практичну роботу (вс,лс)
- •Лабораторна робота № 14. Налагодження програм
- •Лабораторна робота № 15. Обробка символьної інформації.
- •Завдання на самостійну роботу(в,вс,лс)
- •Контрольний опрос на практичному занятті (Лс,Вс).
- •Лабораторна робота № 16. Проектування додатків vb6, у яких дані організовані у вигляді файлів на магнітних носіях.
- •Завдання на самостійну роботу(в,вс,лс)
- •Контрольний опрос на практичному занятті (Вс, Лс)
- •Лабораторна робота № 17. Графіка
Завдання на самостійну (в) та практичну роботу (вс,лс) завдання с13.4
Уровень 1
1. Двa треугольника заданы своими сторонами. Вывести площадь большего треугольника. Определить площадь треугольника по формуле Герона и найти максимальное из двух чисел, задав соответствующие процедуры.
2. Нa плоскости заданы координатами пять точек. Найти расстояние до самой удаленной от начала координат точки.
3. Составить программу проверки знаний таблицы умножения. Использовать процедуру для выбора случайного числа.
4. Человек подбрасывает камень с высоты 2 м. Составить программу, вычисляющую, через сколько секунд камень упадет на землю, если начальная скорость 10 м/с.
Совет. Программа сведется к решению квадратного уравнения. Из двух нужно выбрать положительный корень, т. е. максимальный. Оформить общие процедуры решения квадратного уравнения и поиска максимального числа из двух чисел в универсальных модулях.
Уровень 2
1. Имеется часть катушки с автобусными билетами. Hомер билета шестизначный. Составить программу, определяющую количество счастливых билетов (сумма трех первых цифр pавна сумме трех последних) на катушке, если меньший номер билета, N, а больший — М. Использовать процедуру, определяющую, является ли номер билета счастливым.
2. Выполнить проект — рисование трех домиков (рис. 13.14), Проект должен состоять из одной формы и модуля кода. В модуле кода должна содержаться процедура рисования домика.
Рис. 13.14
3. Вычислить сумму факториалов всех четных чисел от 2 до 10.
4. Найти наименьшее общее кратное (НОК) двух чисел N и М. используя общую процедуру нахождения наибольшего общего делителя (НОД).
Лабораторна робота №13. Модульне програмування. Заняття 2
Функции, определяемые программистом. Visual Basic не ограничивается использованием только встроенных функций, он предоставляет возможность создавать собственные функции. Функция (Function) — один из видов процедур, которые в отличие от подпрограмм (Sub) можно использовать в правой части оператора присваивания. Функции создают тогда, когда результатом выполнения процедуры является значение какой-нибудь величины. Величина может быть числового, строкового или логического типа.
У функции, в отличие от процедуры, нет выходных параметров, входные параметры принято называть аргументами.
Функция не вызывается, подобно процедуре, из программы, а включается в состав выражения, значение которого использует, в том или ином месте программы. При этом говорят, что функция возвращает свое значение.
Ниже рассматриваются функции, определяемые программистом. Имена этих функций, в отличие от встроенных функций, начинаются зарезервированными (ключевыми) словами языка Visual Basic.
Определение функций
Формат определения функции
[Private|Public] [Static] Function ИмяФункции ([ СписокАргументов) As Туре [ Блок операторов] ИмяФункции = Выражение [ Блок операторов] [Exit Sub] [ Блок операторов] End Function
Private — необязательное ключевое слово, которое означает, что данная функция может быть вызвана только из того модуля или формы, в которой описана; Public — необязательное ключевое слово, которое означает, что данная функция может быть вызвана из любого модуля или формы данного проекта. При этом сама функция должна быть описана в модуле; Static — свидетельствует о статусе локальных переменных, т. е. переменных объявленных внутри этой функции. При наличии этого слова локальные переменные будут сохранять свои значения между последовательными вызовами данной функции, при отсутствии — не будут; ИмяФункции — строка символов, подчиняющаяся тем же правилам, что и имя переменной; СписокАргументов — переменные (с их типами), которые играют роль аргументов функции. Переменные перечисляются через запятую. Список берется в круглые скобки; Туре — тип значения, возвращаемого функцией, т. е. тип величины, которая является результатом работы функции; Выражение — арифметическое, строковое или логическое выражение, которое вычисляет возвращаемое функцией значение; Блок операторов — любое количество операторов любого типа; Exit Sub — служит для преждевременного завершения работы функции |
Замечание. Не забудьте строку ИмяФункции = Выражение. Если вы не присвоите имени функции значения, функция не вернет peзультата, т.е. станет совершенно бесполезной.
Размещение пpoгpaммного кода функции. Функция, как и процедура, может входить в состав модуля экранной формы (файл frm) или в состав универсального модуля (файл bas). Если функция должна входить в состав модуля экранной формы, ее код записывается в окне программного кода заданной экранной формы. Если функция должна входить в состав универсального модуля, она определяется в окне программного кода для этого модуля. Для создания функции можно воспользоваться теми же способами, что и при создании процедуры.
Способ 1. Курсор необходимо поместить в то место программного кода, которое не принадлежит никакой процедуре. Можно, например, щелкнуть по элементу (General) меню Object. Курсор автоматически переместится в область, общую для всех процедур модуля экранной формы. Затем нужно набрать клавиатуре ключевое слово Function, вслед за которым — ИмяФункции, а за ним — СписокАргументов в скобках. Visual Basic мгновенно выдаст последнюю строку определения: End Function. Ваша задача — вписать в этот "шаблон" необходимые строки определения функции.
Способ 2. Следует выбрать команду Add Procedure меню Tools а в диалоговом окне в текстовое поле ввести имя функции и установить соответствующие переключатели. Если функция имеет универсальный характер, ее, как и процедуру, можно поместить в файл стандартного модуля. Из таких функций можно создавать целые библиотеки полезных, на ваш взгляд, функций.
Замечание. Хорошим решением считается сохранение функций в файлах модуля. В этом случае коды, отвечающие за работу пользовательского интерфейса, не будут смешиваться с кодами, выполняющими обработку данных и производящими вычисления.
Пример:
Public Function MbBit(Мb As Integer) As Long
Const k As Long = 8388608 '(8 * 1024 * 1024)
MbBit = Мb * k
End Function
Функция МbBit возвращает количество бит информации, если задано количество информации в мегабайтах. Очевидно, что у этой функции один аргумент Mb As Integer. В определении функции указывается не только тип аргумента, но и тип значения самой функции (As Long). Переменной МbBit присваивается числовое значение, оно и будет возвращаемым значением функции.
Вызов функций отличается от вызова процедуры. Поскольку каждая функция возвращает в качестве результата значение, для того чтобы вызвать ее, надо записать имя функции в какое-либо выражение в том месте, где должно появиться значение вычисляемой функцией величины.
Пример:
Private Sub cmd_Click_Click()
Dim a As Integer
a = InputBox("Введіть кількістьМB", "Переведення МB в біти")
Print a; " МB = "; MbBit(a); " bit"
End Sub
В событийной процедуре cmd_ Click() используется выражение MbBit (которое вызывает функцию, определенную в примере 13.6, и вычисляет ее значение с аргументом 100, введенным с помощью функции InputВox (рис. 13.15), т.е. в биты должно быть переведено значение 100 Мбит). Результат работы представлен на рис. 13.16.
Рис. 13.15 Рис. 13.16
Например:
Private Sub cmd_Click()
Dim k As Integer, d As Integer
k= 2
d=3
Print Sum(k, d) + Sum(k, d)^ 2
End Sub
Functiоn Sum(a As Integer, b As Integer) As Integer
Sum = а + b
End Function
В результате работы программы на форме будет напечатано число 30. Функция Sum возвращает значение суммы двух чисел. Очевидно, что у функции два аргумента – а и b. В определении функции указываются не только типы аргументов (As Integer), но и тип значения самой функции As Integer. Переменной Sum присваивается числовое значение; оно и будет возвращаемым значением функции.
Тип данных принимаемых и возвращаемых значений. Поскольку функция возвращает лишь одно значение, обязательно нужно указать какой-то тип данных, которому это значение может соответствовать. Функции часто не используют необоснованно, если ее тип не числовой.
Например:
Private Function Ответ(Вопрос As String) As String
IF Вопрос = "Назовите столицу Перу" Then
Ответ="Лима"
Else
Ответ = "Не знаю"
End IF
End Function
Private Sub сmdВопрос_Сliсk()
Dim v As String
