Модуль 1_VBasic
.pdfThis document is created with trial version of Document2PDF Pilot 2.16.100.
Необхідно створити відповідно до індивідуального в аріанта програму, у ході виконання якої вводяться користувачем невідомі числа й обчислюється значення функції Y. При розробці програми слід створити форму, програмний код, перевірити дію програми. Далі необхідно зберегти програму на магнітному диску, надрукувати форму та код програми.
Звіт про роботу повинен вміщувати:
1.Блок-схему алгоритмічного процесу розв’язання задачі.
2.Роздруковану форму програми.
3.Роздрукований код програми.
Y=(a/2+b/3)*x
Створення програм у середовищі Visual Basic 6.0 Варіант 8
Необхідно створити відповідно до індивідуального варіанта програму, у ході виконання якої вводяться користувачем невідомі числа й обчислюється значення функції Y. При розробці програми слід створити форму, програмний код, перевірити дію програми. Далі не обхідно зберегти програму на магнітному диску, надрукувати форму та код програми.
Звіт про роботу повинен вміщувати:
1.Блок-схему алгоритмічного процесу розв’язання задачі.
2.Роздруковану форму програми.
3.Роздрукований код програми.
|
Y=(a*x+b*c)-10 |
|
Створення програм у середовищі Visual Basic 6.0 |
|
|
|
Варіант 9 |
|
Необхідно створити відповідно до індивідуального варіанта програму, у |
|
|
ході виконання якої вводяться користувачем невідомі числа й обчислюється |
|
|
значення функції |
Y. При розробці програми слід створити форму |
, |
програмний код, перевірити дію програми. Далі необхідно зберегти |
|
|
програму на магнітному диску, надрукувати форму та код програми. |
|
|
Звіт про роботу повинен вміщувати: |
|
1.Блок-схему алгоритмічного процесу розв’язання задачі.
2.Роздруковану форму програми.
3.Роздрукований код програми.
Y=a*(x-10)+b
Створення програм у середовищі Visual Basic 6.0 Варіант 10
Необхідно створити відповідно до індивідуального варіанта програму, у ході виконання якої вводяться користувачем невідомі числа й обчислюється значення фун кції Y. При розробці програми слід створити форму, програмний код, перевірити дію програми. Далі необхідно зберегти програму на магнітному диску, надрукувати форму та код програми.
This document is created with trial version of Document2PDF Pilot 2.16.100.
Звіт про роботу повинен вміщувати:
1.Блок-схему алгоритмічного процесу розв’язання задачі.
2.Роздруковану форму програми.
3.Роздрукований код програми.
Y=a*c+3*x
Створення програм у середовищі Visual Basic 6.0 Варіант 11
Необхідно створити відповідно до індивідуального варіанта програму, у ході виконання якої вводяться користувач ем невідомі числа й обчислюється значення функції Y. При розробці програми слід створити форму, програмний код, перевірити дію програми. Далі необхідно зберегти програму на магнітному диску, надрукувати форму та код програми.
Звіт про роботу повинен вміщувати:
1.Блок-схему алгоритмічного процесу розв’язання задачі.
2.Роздруковану форму програми.
3.Роздрукований код програми.
Y=a*x+b*c
Створення програм у середовищі Visual Basic 6.0 Варіант 12
Необхідно створити відповідно до індивідуального варіанта програ му, у ході виконання якої вводяться користувачем невідомі числа й обчислюється значення функції Y. При розробці програми слід створити форму, програмний код, перевірити дію програми. Далі необхідно зберегти програму на магнітному диску, надрукувати форму та код програми.
Звіт про роботу повинен вміщувати:
1.Блок-схему алгоритмічного процесу розв’язання задачі.
2.Роздруковану форму програми.
3.Роздрукований код програми.
Y=a*c+b+x
Створення програм у середовищі Visual Basic 6.0 Варіант 13
Необхідно створити відповідно до індивідуального варіанта програму, у ході виконання якої вводяться користувачем невідомі числа й обчислюється значення функції Y. При розробці програми слід створити форму, програмний код, перевірити дію програми. Далі необхідно зберегти програму на магнітному диску, надрукувати форму та код програми.
Звіт про роботу повинен вміщувати:
1.Блок-схему алгоритмічного процесу розв’язання задачі.
2.Роздруковану форму програми.
3.Роздрукований код програми.
Y=a+(a*c+b*x)
Створення програм у середовищі Visual Basic 6.0
This document is created with trial version of Document2PDF Pilot 2.16.100.
Варіант 14
Необхідно створити відповідно до індивідуального варіанта програму, у ході виконання якої вводяться користувачем невідомі числа й обчислюється значення функції Y. При розробці програми слід створити форму, програмний код, перевірити дію програми. Далі необхідно зберегти програму на магнітному диску, надрукувати форму та код програми.
Звіт про роботу повинен вміщувати:
1.Блок-схему алгоритмічного процесу розв’язання задачі.
2.Роздруковану форму програми.
3.Роздрукований код програми.
Y=(a+16*x*b*c)
Створення програм у середовищі Visual Basic 6.0 Варіант 15
Необхідно створити відповідно до індивідуального варіанта програму, у ході виконання якої вводяться користувачем невідомі числа й обчислюється значення функції Y. При розро бці програми слід створити форму, програмний код, перевірити дію програми. Далі необхідно зберегти програму на магнітному диску, надрукувати форму та код програми.
Звіт про роботу повинен вміщувати:
1.Блок-схему алгоритмічного процесу розв’язання задачі.
2.Роздруковану форму програми.
3.Роздрукований код програми.
Y=(a*4-b/5)*x
3. Завдання для аудиторної контрольної роботи за темою "Програмування розгалужених обчислювальних процесів за допомогою язика програмування Visual Basic”.
3.1 Організація розгалужених обчислювальних процесів 3.1.1 Умовний оператор If
Оператор If реалізує алгоритмічну конструкцію “Розгалуження”. Загальна форма оператора:
If <умова> then <Блок_операторів_1>
Else
<Блок_операторів_2>
End If
“Блок_операторів_1” виконуєт ься в тому випадку, якщо умова має значення «істинно». У тому випадку, якщо логічна умова має значення «брехня» виконується “Блок_операторів_2”.
Оператор If можна використовувати також у такій формі:
If умова Then
Блок_операторів
End If
Скорочена форма оператору If застосовується тоді, коли блок операторів слід виконувати лише при істинності деякої умови.
This document is created with trial version of Document2PDF Pilot 2.16.100.
Алгоритми обчислювальних процесів містять хоча б один етап, що має більш одного спадкоємця, який включається в обчислювальний процес у залежності від виконання деякої умови. Напрямки, по яких може слідувати обчислювальний процес, називаються його гілками. Приклад: Записати у вигляді блок - схеми алгоритм обчислення:
ìa * x + b , |
при |
x |
>= 0 |
Y = í |
при |
x |
< 0 |
îa * x − b , |
При запису розгалужених обчислювальних процесів необхідно додержуватися наступних вимог:
1.У різноманітних гілках можна використовувати ті ж самі позначення перемінних.
2.Обчислення або процеси, що повторюються в різноманітних гілках
блок - схеми, виносяться за межі розгалуження (у нашому прикладі це - обчислення а * х і друк результату).
3. Складні обчислення розбиваються на ряд простих.
З урахуванням перерахованих вимог, рішення задачі буде виглядати в так:
Ввід а х b
|
|
|
|
|
|
|
|
|
Y=a*x |
|
|
|
|
|
|
|
|
|
|
|
< |
|
|
>= |
|
||
|
|
|
||||
y=y-b |
|
x ; 0 |
|
|
y=y+b |
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Друк y
Зупинка
Рисунок 3.1. Блок-схема алгоритму обчислення
На етапі візуального програмування потрібно створити форму, подану на рис.3.2
This document is created with trial version of Document2PDF Pilot 2.16.100.
Рисунок 3.2. Вікно програми-прикладу (форма) використання оператору If
Характеристика форми, елементів управління подана в таблиці.
Об'єкт |
Властивість |
Значення |
Форма (Form) |
Name |
frmExampleIf |
|
Caption |
Програма - приклад If |
|
BackColor |
білий |
Командна кнопка |
Name |
cmdSolve |
(Command Button) |
Caption |
Розрахунок |
|
Font |
12 пунктів, напівжирний |
Командна кнопка |
Name |
cmdClear |
(Command Button) |
Caption |
Очистка |
|
Font |
12 пунктів, напівжирний |
Командна кнопка |
Name |
cmdExit |
(Command Button) |
Caption |
Вихід |
|
Font |
12 пунктів, напівжирний |
Етикетка (Label) |
Name |
lbla |
|
Caption |
Перемінна а |
|
BackColor |
білий |
|
Font |
12 пунктів, напівжирний |
Етикетка (Label) |
Name |
lblb |
|
Caption |
Перемінна b |
|
BackColor |
білий |
|
Font |
12 пунктів, напівжирний |
This document is created with trial version of Document2PDF Pilot 2.16.100.
Етикетка (Label) |
Name |
lblx |
|
Caption |
Перемінна х |
|
BackColor |
білий |
|
Font |
12 пунктів, напівжирний |
Етикетка (Label) |
Name |
lbly |
|
Caption |
Результат |
|
BackColor |
білий |
|
Font |
12 пунктів, напівжирний |
Текстове поле |
Name |
txta |
(TextBox) |
Text |
“ëû” (порожній рядок) |
Текстове поле |
Name |
txtb |
(TextBox) |
Text |
“ëû” (порожній рядок) |
Текстове поле |
Name |
txtx |
(TextBox) |
Text |
“ëû” (порожній рядок) |
Текстове поле |
Name |
txty |
(TextBox) |
Text |
“ëû” (порожній рядок) |
Об'єкт OLE(OLE) |
Name |
ole1 |
Характеристика коду програми подана в таблиці.
Дані в рядку коду |
|
Коментар |
|
Option Explicit |
|
Оголошення змінних: |
|
Dim a, b, x, y |
|
a, b, x, y |
|
|
|
|
|
Private |
Sub |
Заголовок процедури, яка виконується у |
|
cmdClear_Click() |
|
випадку події Click – клацання лівою кнопкою |
|
|
|
миші на кнопці cmdClear (Очистка). |
|
txta.Text = "" |
|
Властивості Text текстового поля txta (для |
|
|
|
введення перемінної а) привласнюється |
|
txtb.Text = "" |
|
значення “ëû” (порожній рядок - пробіл). |
|
|
Властивості Text текстового поля txtb (для |
||
|
|
введення перемінної b) привласнюється |
|
txtx.Text = "" |
|
значення “ëû” (порожній рядок - пробіл). |
|
|
Властивості Text текстового поля txtx (для |
||
|
|
введення перемінної x) привласнюється |
|
txty.Text = "" |
|
значення “ëû” (порожній рядок - пробіл). |
|
|
Властивості Text текстового поля txty (для |
||
|
|
виведення результату) привласнюється значення |
|
End Sub |
|
“ëû” (порожній рядок - пробіл). |
|
|
Кінець процедури cmdClear_Click. |
||
Private |
Sub |
Заголовок процедури, |
яка виконується у |
cmdExit_Click() |
|
випадку кл ацання лівою кнопкою миші на |
|
|
|
кнопці Вихід. |
|
End |
|
Кінець роботи програми |
|
End Sub |
|
Кінець процедури cmdExit_Click. |
This document is created with trial version of Document2PDF Pilot 2.16.100.
Private Sub |
Заголовок процедури, яка виконується у |
|
cmdRachet_Click() |
випадку події |
Click на кнопці cmdRachet |
|
(Розрахунок). |
|
a = Val(txta.Text) |
Змінній a привласнюється значення властивості |
|
|
Text об'єкта txta - значення числа, яке введено |
|
|
за допомогою клавіатури. Оскільки значення |
|
|
текстового поля має тип даних string (текстові |
|
|
дані), щоб можна було виконувати обчислення, |
|
|
їх треба перетворювати до числових значень з |
|
|
використанням функції Val. |
|
b = Val(txtb.Text) |
Змінній b привласнюється значення властивості |
|
|
Text об'єкта txtb - значення числа, яке введено |
|
|
за допомогою клавіатури. |
|
x = Val(txtx.Text) |
Змінній x привласнюється значення властивості |
|
|
Text об'єкта txtx - значення числа, яке введено |
|
|
за допомогою клавіатури. |
|
If x >= 0 Then |
якщо x більше або рівно 0, то |
|
y = a * x + b |
У змінну y записується результат a*x+b. |
|
Else |
інакше |
|
y = a * x - b |
У змінну y записується результат a*x-b. |
|
End If |
Завершення оператору If |
|
txty.Text = Str(y) |
Властивості Text об'єкту txty привласнюється |
|
|
значення змінної |
У. За допомогою функції Str |
|
виконується перетворення числового значення |
|
|
змінної У у рядок символів. |
|
End Sub |
Кінець процедури cmdRachet _Click. |
3.1.2 Оператор варіанти Select Case
Оператор Select Case подібно оператору If здійснює розгалуження, але при цьому дозволяє організувати розгалуження відразу по декількох напрямках.
Загальна форма оператора:
Select Case X
Case <значення1 або віраз1>
ділянка програми, що виконується, якщо Х = значення1 або выраз1
Case <значення2 або віраз2>
ділянка програми, що виконується, якщо Х = значення2 або выраз2
. . .
Case <значенняN або віразN>
ділянка програми, що виконується, якщо Х = значенняN або выразN
Case Else
ділянка програми, що виконується, якщо жодна з умов не відповідає фактичному значенню Х
This document is created with trial version of Document2PDF Pilot 2.16.100.
End Select |
|
Виконання оператору Select Case залежить від значення змінної Х |
– |
змінної варіанти. У першій гілці обчислюється значення виразу1, якщо він є в операторі, результат або значення1 порівнюється з фактичним значенням змінної Х. Якщо в наслідок порівняння отримано значення “істина”, виконуються оператори, які йдуть після рядка Case. Коли отримано значення “брехня”, обчислюється значення виразу2, змінна Х порівнюється з отриманим результатом або значе нням2, якщо значення рівні, виконується друга гілка і т.д. Гілка Case Else в оп ераторі не обов'язкова, виконується, якщо жодна з умов не відповідає фактичному значенню Х.
Приклад застосування оператора Select Case
Щоб розглянути використання оператора Select Case на прикладі потрібно доробити програму, створену в п. 3.1.1. Після редагування програма повинна включати засоби аналізу клавіші, натиснутої при введенні даних у полях txta, txtb, txtx, txty. Припустимим вважається натискання спеціальних клавіш (наприклад, клавіш керування курсором, Del, Home), кл авіші Backspace, десяткової крапки, цифр від 0 до 9. У форму необхідно помі стити
ще один елемент |
- етикетку lblMesKey для виведення повідомлення у |
|
випадку н атискання неприпустимої клавіші. Після натискання будь |
-якої |
|
клавіші в текст |
овому полі, якому відповідає подія KeyPress, потрібно |
|
виконати аналіз натиснутої клавіші. Якщо натиснута неприпустима клавіша, то видається повідомлення про помилку і вміст текстового поля знищується, у противному випадку ніяких дій не виконується. Аналіз натиснутої клавіші виконується за допомогою цілої чи слової змінної KeyAscii. Через цю змінну
в момент натискання |
(подія KeyPress) процедурі, яка відповідає п |
одії, |
передається значення |
ASCII -коду натиснутої клавіші. Процедура повинна |
перевіряти символ, що вводиться, на припустимість. Список припустимих у процедурах кодів наведено в таблиці:
Значення змінної KeyAscii |
Пояснення |
0 |
Спеціальні клавіші |
8 |
Backspace |
46 |
Десяткова крапка |
48. .57 |
Цифри від 0 до 9 |
This document is created with trial version of Document2PDF Pilot 2.16.100.
На етапі візуального програмування потрібно змінити ім'я форми, помістити у форму додатковий елемент - етикетку lblMesKey.
Рисунок 3.4 - Вікно програми -приклада використання оператора Select Case
До коду програми потрібно додати процедуру, яка подана в таблиці.
Дані в рядку коду |
Коментар |
|
Private Sub txta_KeyPress |
Процедура, що виконується у випадку натискання будь- |
|
(KeyAscii As Integer) |
якої клавіші в полі txta для введення перемінної а. Для |
|
створення процедури потрібно виконати подвійне |
||
|
клацання лівою кнопкою миші на текстовому полі. |
|
lblMesKey.Caption = " " |
Властивості Caption етикетки lblMesKey (для |
|
|
виведення повідомлення про помилку) привласнюється |
|
Select Case KeyAscii |
значення “ëû“ (порожній рядок). |
|
Початок оператора Select Case, що реалізує |
||
|
розгалуження виконання програми в залежності від |
|
|
значення стандартної змінної KeyAscii |
|
Case 0, 8, 46, 48 To 57 |
У тому випадку, якщо зміннаKeyAscii дорівнює 0, 8 або |
|
|
46, або знаходиться в діапазоні від 48 до 57 ніяких дій не |
|
'Припустиме значення |
виконується. |
|
Рядок коментарю, який введено для зручності читання |
||
Case Else |
коду програми. |
|
інакше, коли жодна з умов не відповідає значенню |
||
'Неприпустиме значення |
змінної KeyAscii виконуються такі дії |
|
Властивості Caption етикетки lblMesKey |
||
lblMesKey.Caption = "Натиснута |
||
неприпустима клавіша" |
привласнюється значення "Натиснута неприпустима |
|
клавіша". |
||
|
||
txtа.Text = " " |
Властивості Text текстового поля txtа привласнюється |
|
KeyAscii = 0 |
значення “ëû“ (порожній рядок). |
|
Змінної KeyAscii присвоюється значення 0. |
||
End Select |
Завершення оператора Select Case. |
|
End Sub |
Завершення процедури txtа_KeyPress |
This document is created with trial version of Document2PDF Pilot 2.16.100.
Private Sub txtb_KeyPress |
Процедура, що виконується у випадку натискання будь- |
|
(KeyAscii As Integer) |
якої клавіші в полі txtb для введення перемінної b. Для |
|
створення процедури потрібно виконати подвійне |
||
|
клацання лівою кнопкою миші на текстовому полі. |
|
lblMesKey.Caption = " " |
Властивості Caption етикетки lblMesKey (для |
|
|
виведення повідомлення про помилку) привласнюється |
|
Select Case KeyAscii |
значення “ëû“ (порожній рядок). |
|
Початок оператора Select Case, що реалізує |
||
|
розгалуження виконання програми в залежності від |
|
|
значення стандартної змінної KeyAscii |
|
Case 0, 8, 46, 48 To 57 |
У тому випадку, якщо зміннаKeyAscii дорівнює 0, 8 або |
|
|
46, або знаходиться в діапазоні від 48 до 57 ніяких дій не |
|
'Припустиме значення |
виконується. |
|
Рядок коментарю, який введено для зручності читання |
||
Case Else |
коду програми. |
|
інакше, коли жодна з умов не відповідає значенню |
||
'Неприпустиме значення |
змінної KeyAscii виконуються такі дії |
|
Властивості Caption етикетки lblMesKey |
||
lblMesKey.Caption = "Натиснута |
||
неприпустима клавіша" |
привласнюється значення "Натиснута неприпустима |
|
клавіша". |
||
|
||
txtb.Text = " " |
Властивості Text текстового поля txtb привласнюється |
|
KeyAscii = 0 |
значення “ëû“ (порожній рядок). |
|
Змінної KeyAscii присвоюється значення 0. |
||
End Select |
Завершення оператора Select Case. |
|
End Sub |
Завершення процедури txtb_KeyPress |
|
Private Sub txtx_KeyPress |
Процедура, що виконується у випадку натискання будь- |
|
(KeyAscii As Integer) |
якої клавіші в полі txtx для введення перемінної x. Для |
|
створення процедури потрібно виконати подвійне |
||
|
клацання лівою кнопкою миші на текстовому полі. |
|
lblMesKey.Caption = " " |
Властивості Caption етикетки lblMesKey (для |
|
|
виведення повідомлення про помилку) привласнюється |
|
Select Case KeyAscii |
значення “ëû“ (порожній рядок). |
|
Початок оператора Select Case, що реалізує |
||
|
розгалуження виконання програми в залежності від |
|
|
значення стандартної змінної KeyAscii |
|
Case 0, 8, 46, 48 To 57 |
У тому випадку, якщо зміннаKeyAscii дорівнює 0, 8 або |
|
|
46, або знаходиться в діапазоні від 48 до 57 ніяких дій не |
|
'Припустиме значення |
виконується. |
|
Рядок коментарю, який введено для зручності читання |
||
Case Else |
коду програми. |
|
інакше, коли жодна з умов не відповідає значенню |
||
'Неприпустиме значення |
змінної KeyAscii виконуються такі дії |
|
Властивості Caption етикетки lblMesKey |
||
lblMesKey.Caption = "Натиснута |
||
неприпустима клавіша" |
привласнюється значення "Натиснута неприпустима |
|
клавіша". |
||
|
||
txtx.Text = " " |
Властивості Text текстового поля txtx привласнюється |
|
KeyAscii = 0 |
значення “ëû“ (порожній рядок). |
|
Змінної KeyAscii присвоюється значення 0. |
||
End Select |
Завершення оператора Select Case. |
|
End Sub |
Завершення процедури txtx_KeyPress |