- •Передмова
- •Тематичний план
- •Лабораторна робота № 1
- •Завдання:
- •Контрольні питання:
- •Лабораторна робота №2
- •Завдання №2. Переміщення вікон
- •Завдання №3. Зміна розмірів вікна
- •Переміщення діалогових вікон
- •Робота з управляючими елементами діалогового вікна
- •Контрольні питання:
- •Лабораторна робота № 3
- •Завдання:
- •Технологія виконання роботи
- •Контрольні питання:
- •Лабораторна робота №4
- •Завдання:
- •Контрольні питання:
- •Лабораторна робота №5
- •Завдання №1:
- •Завдання №2:
- •Лабораторна робота №6
- •Контрольні питання:
- •Лабораторна робота №7
- •Конрольні питання:
- •Лабораторна робота №8
- •Завдання:
- •Контрольні питання:
- •Лабораторна робота №9
- •1. Знайомство з середовищем програмування Visual Basic.
- •Контрольні питання:
- •Лабораторна робота №10
- •Завдання№1:
- •Завдання №2:
- •Завдання №3:
- •Контрольні питання:
- •Лабораторна робота №11
- •Завдання№1:
- •Контрольні питання:
- •Лабораторна робота №12
- •Контрольні питання:
- •Лабораторна робота №13
- •Контрольні питання:
- •Лабораторна робота №14
- •Контрольні питання:
- •Лабораторна робота №15
- •Контрольні питання:
- •Лабораторна робота №16
- •Контрольні питання:
- •Лабораторна робота №17
- •Контрольні питання:
Лабораторна робота №11
Тема: Visual Basic. Розробка додатків, що реалізують циклічний обчислювальний процес.
Мета: навчитись використовувати засоби Visual Basic для розробки додатків з циклічним обчислювальним процесом.
Завдання№1:
1. Активізуйте Visual Basic: Пуск−> Программы−> Visual Basic−> Visual Basic 6.0.
2. Розробимо форму з назвою Сума, в якій будуть такі об’єкти:
- 5 написів Label1 – Label5
- 3 текстових поля Text1 – Text3 для введення даних (два поля для введення значення початку і кінця відрізка a і b, одне для введення кроку h зміни аргумента
-одна командна кнопка Command1. З командною кнопкою Command1 пов’язана подія – клік на цій кнопці, який запускає на виконання процедуру обчислення суми виплат.
- Результат обчислення суми значень функції виводиться у напис з ім’ям Label5.
3. У вікні властивостей форми задайте для властивості Caption значення Сума, для властивості ForeColor виберіть зі списку вказаний на малюнку колір.
4. Для всіх написів задайте відповідне значення (властивість Caption), колір фону і вирівнювання по центру у відповідності з наведеним нижче малюнком.
5. Для текстових полів також задайте зачення „пусто” (властивість Text), вирівнювання по центру у відповідності з наведеним нижче рисунком.
6. Дотримайтесь вказаного розташування об’єктів і усвідомте логічний зв’язок між об’єктами:
Label1 −> Text1
Label2 −> Text2
Label3 −> Text3
7. Для командної кнопки Command1 встановіть значення Обчислити (властивість Caption), вирівнювання по центру у відповідності з рисунком.
8. Двічі клацніть на командній кнопці і у вікні редактору коду введіть код процедури як у наведеному нижче вікні, після чого закрийте вікно коду.
Private Sub Command1_Click()
Dim a, b, Arg, Y, Krok, Sum As Double
a = Val(Text1.Text)
b = Val(Text2.Text)
Krok = Val(Text3.Text)
Arg = a ‘ початкове значення змінної циклу
Sum = 0 ‘очищення змінної
Do While Arg <= b
Y = 7 * Arg + Abs(5 * Arg ^ 3 - 7 * Arg + 4) + _
(2 * Arg ^ 2 + 1) / (3 * Abs(Arg) + 5)
Sum = Sum + Y
Arg = Arg + Krok
Loop
Label5.Caption = Sum
End Sub
Тут використано оператор циклу Do While ... Loop.
!!!!Зверніть увагу на перенесення продовження вираз у наступний рядок (пропуск і символ підкреслення).
9.Збережіть форму і проект на своєму системному диску у папці ПР_Програмування_Прізвище з назвою Практична_робота_№10_Прізвище:
10.Запустіть розроблений проект на виконання, скориставшись відповідним меню або кнопкою старт панелі інструментів. При цьому на екрані з’явиться вікно форми Сума, в якому в текстових полях потрібно задати значення відповідних величин і натиснути кнопку Обчислити. Після виконання обчислень у формі у написі Label5 буде виведено результат обчислення суми значень функції. Перевірте відповідність отриманого результату наведеному нижче:
11.Виконайте модифікацію коду процедури обробки події для командної кнопки у відповідності з наведеним нижче текстом:
Private Sub Command1_Click()
Dim a, b, Arg, Y, Krok, Sum As Double
a = Val(Text1.Text)
b = Val(Text2.Text)
Krok = Val(Text3.Text)
Arg = a ‘ початкове значення змінної циклу
Sum = 0 ‘очищення змінної
Do While Arg <= b
Y = 7 * Arg + Abs(5 * Arg ^ 3 - 7 * Arg + 4) + _
(2 * Arg ^ 2 + 1) / (3 * Abs(Arg) + 5)
Print Y
Sum = Sum + Y
Arg = Arg + Krok
Loop
Label5.Caption = Sum
End Sub
Команда Print Y буде друкувати на формі значення Y. Запустіть проект на виконання і переконайтесь у цьому.
12. Виконайте модифікацію коду процедури обробки події для командної кнопки у відповідності з наведеним нижче текстом:
Private Sub Command1_Click()
Dim a, b, Arg, Y, Krok, Sum As Double
a = Val(Text1.Text)
b = Val(Text2.Text)
Krok = Val(Text3.Text)
Arg = a ‘ початкове значення змінної циклу
Sum = 0 ‘очищення змінної
Do While Arg <= b
Y = 7 * Arg + Abs(5 * Arg ^ 3 - 7 * Arg + 4) + _
(2 * Arg ^ 2 + 1) / (3 * Abs(Arg) + 5)
Form1.ForeColor = vbRed
Form1.Font.Italic = True
Print Y
Sum = Sum + Y
Arg = Arg + Krok
Loop
Label5.Caption = Sum
End Sub
Команди Form1.ForeColor = vbRed і Form1.Font.Italic = True змінюють властивості форми (кольору шрифту і шрифт, яким будуть надруковані дані). Запустіть проект на виконання і переконайтесь у цьому.
13. Виконайте наступну модифікацію коду процедури обробки події для командної кнопки у відповідності з наведеним нижче текстом, в якому застосований оператор циклу
Do ... Loop While:
Private Sub Command1_Click()
Dim a, b, Arg, Y, Krok, Sum As Double
a = Val(Text1.Text)
b = Val(Text2.Text)
Krok = Val(Text3.Text)
Arg = a ‘ початкове значення змінної циклу
Sum = 0 ‘очищення змінної
Do
Y = 7 * Arg + Abs(5 * Arg ^ 3 - 7 * Arg + 4) + _
(2 * Arg ^ 2 + 1) / (3 * Abs(Arg) + 5)
Form1.ForeColor = vbRed
Form1.Font.Italic = True
Print Y
Sum = Sum + Y
Arg = Arg + Krok
Loop While Arg <= b
Label5.Caption = Sum
End Sub
Запустіть проект на виконання і порівняйте отриманий результат з попереднім.
14. Виконайте наступну модифікацію коду процедури обробки події для командної кнопки у відповідності з наведеним нижче текстом, в якому застосований оператор циклу
Do Until... Loop:
Private Sub Command1_Click()
Dim a, b, Arg, Y, Krok, Sum As Double
a = Val(Text1.Text)
b = Val(Text2.Text)
Krok = Val(Text3.Text)
Arg = a ‘ початкове значення змінної циклу
Sum = 0 ‘очищення змінної
Do Until Arg > b
Y = 7 * Arg + Abs(5 * Arg ^ 3 - 7 * Arg + 4) + _
(2 * Arg ^ 2 + 1) / (3 * Abs(Arg) + 5)
Form1.ForeColor = vbRed
Form1.Font.Italic = True
Print Y
Sum = Sum + Y
Arg = Arg + Krok
Loop
Label5.Caption = Sum
End Sub
Запустіть проект на виконання і переконайтесь у його успішній роботі.
15. Виконайте наступну модифікацію коду процедури обробки події для командної кнопки у відповідності з наведеним нижче текстом, в якому застосований оператор циклу
Do... Loop Until:
Private Sub Command1_Click()
Dim a, b, Arg, Y, Krok, Sum As Double
a = Val(Text1.Text)
b = Val(Text2.Text)
Krok = Val(Text3.Text)
Arg = a ‘ початкове значення змінної циклу
Sum = 0 ‘очищення змінної
Do
Y = 7 * Arg + Abs(5 * Arg ^ 3 - 7 * Arg + 4) + _
(2 * Arg ^ 2 + 1) / (3 * Abs(Arg) + 5)
Form1.ForeColor = vbRed
Form1.Font.Italic = True
Print Y
Sum = Sum + Y
Arg = Arg + Krok
Loop Until Arg > b
Label5.Caption = Sum
End Sub
Запустіть проект на виконання і переконайтесь у його успішній роботі. Чим відрізняється остання процедура від попередньої?
16. Виконайте останню модифікацію коду процедури обробки події для командної кнопки у відповідності з наведеним нижче текстом, в якому у формі друкуються ще й значення аргумента і функції з їх заголовками:
Private Sub Command1_Click()
Dim a, b, Arg, Y, Krok, Sum As Double
a = Val(Text1.Text)
b = Val(Text2.Text)
Krok = Val(Text3.Text)
Arg = a ‘ початкове значення змінної циклу
Sum = 0 ‘очищення змінної
Print "x", "Y"
Do
Y = 7 * Arg + Abs(5 * Arg ^ 3 - 7 * Arg + 4) + _
(2 * Arg ^ 2 + 1) / (3 * Abs(Arg) + 5)
Form1.ForeColor = vbRed
Form1.Font.Italic = True
Print Arg, Y
Sum = Sum + Y
Arg = Arg + Krok
Loop Until Arg > b
Label5.Caption = Sum
End Sub
Запустіть проект на виконання і переконайтесь у його успішній роботі. Чим відрізняється остання процедура від попередньої?
Завдання №2: Розробіть додаток для обчислення добутку усіх непарних чисел з відрізка [1;20].
Математична модель додатку.
Перше непарне число на цьому відрізку – 1, наступне утворюється додаванням до попереднього числа 2. Щоб отримати добуток, потрібно виконати множення всіх непарних чисел з заданого відрізка. Обчислювальний процес можна розглядати як циклічний.
1. Активізуйте новий проект. Розробіть форму з 3 написами і однією командною кнопкою у відповідності з наведеним нижче малюнком.
2.Введіть код процедури обробки події – клацання на командній кнопці Обчислити. Для реалізації циклічного обчислювального процессу можна застосувати оператори Do... Loop. Змінна Arg зберігає поточне значення непарного числа, вона є змінною циклу. Змінна Dob зберігає поточне і кінцеве значення добутку непарних чисел. Використаємо явне оголошення змінних з застосуванням суфіксів. У вікні редактора коду введіть програмний код:
Private Sub Command1_Click()
Dim Arg!, Dob#
Arg! = 1
Dob# = 1 ’присвоєння значення 1 змінній Dob, в якій буде накоплюватись ’добуток, перед початком циклу є обов’язковим!
Do Until Arg! > 20
Dob# = Dob# * Arg!
Arg! = Arg! + 2
Loop
Label3.Caption = Dob#
End Sub
3. Збережіть форму і проект на своєму системному диску у папці ПР_Програмування_Прізвище з назвою Практична_робота_№10_2_Прізвище:
4. Запустіть проект на виконання. Порівняйте отриманий результат з наведеним нижче.
