
If умова then оператор
2.
If умова then
оператори
END IF
Конструкція IF ... Then застосовується в тому разі, коли необхідно виконати один або групу операторів, якщо значення заданої умови дорівнює True. Ключові слова End If означають кінець багаторядкового оператора, і його наявність у цьому випадку обов'язкова. Якщо значення заданої умови дорівнює True, то будуть виконані операції, що слідують за ключовим словом Then. Якщо умова не виконується (логічний вираз має значення False), то Visual Basic переходить до виконання наступного оператора у однорядковому варіанті умовного оператора чи першого оператора після End If у багаторядковому варіанті умовного оператора.
ІІ.
IF умова THEN
Оператори 1
ELSE
Оператори 2
END IF
або
IF умова THEN
Оператори 1
ELSE: оператори 2
END IF
Конструкція If... Then... Else аналогічна конструкції If... Then, але дозволяє задати дії, що здійснюються як при виконанні логічної умови, так і у разі її невиконання.
У випадку, коли необхідно перевіряти декілька умов і в залежності від їх виконання виконувати визначений набір команд, використовують конструкцію наступного вигляду:
IF умова1 THEN
Оператори 1
ELSEIF умова2 THEN
Оператори 2
[ELSE
оператори N]
END IF
3. Конструкція SELECT CASE – багатозначний вибір.
SELECT CASE <вираз>
CASE <список значень 1>
Оператори 1
CASE <список значень 2>
Оператори 2
….. ……
CASE ELSE
оператори N
END SELECT
Оператор вибору діє так. Спочатку обчислюється вираз, який стоїть після ключових слів SELECT CASE. Потім відшукується в списках значень перше порівняння, яке виконується при отриманому значенні. Якщо таке порівняння знайдено, то виконуються оператори, що стоять у відповідному блоці CASE і керування передається на кінець оператора, якщо ж значення виразу не задовольняється у жодному списку, і є конструкція CASE ELSE, то виконуються оператори, що містяться в ній. В іншому випадку жодний оператор, що міститься в операторі вибору, не виконується.
Оператор вибору доцільно вживати, коли є більше двох гілок, тобто в складних розгалужених процесах.
При створенні коду процедур можна використовувати стандартні функції Visual Basic (табл. 2.3., табл. 2.4).
Таблица 2.3. Математичні функції
Функція |
Призначення |
Abs(x) |
Абсолютне значення х |
Atn(x) |
Арктангенс |
Cos(x) |
Косинус |
Exp(x) |
Експонента ех |
Fix(x) |
ціле число, дорівнює числу х без дробової частини. |
Int(x) |
найбільше ціле, що не перевищує х |
Round(x,a) |
Округлення х з точністю до а десяткових знаків |
Log(x) |
Натуральний логарифм – ln x |
Rnd(x) |
Датчик випадкових чисел |
Sng(x) |
В
залежності від знака числа повертається
значення 1, 0, -1
|
Sin(x) |
Синус |
Sqr(x) |
Квадратний корінь |
Tan(x) |
Тангенс |
Таблица 2.4. Текстові функції
LTrim(strA) |
Вилучення зайвих пробілів на початку рядка |
RTrim(strA) |
Вилучення зайвих пробілів у кінці рядка |
Trim(strA) |
Вилучення зайвих пробілів на початку і у кінці рядка |
LEFT(strA,K) |
виділяє К символів з strA, починаючи з першого |
RIGHT(strA,K) |
виділяє з strA справа частину довжиною К символів |
MID(strA,L,M) |
виділяє з strA частину довжиною М символів, починаючи від символу з номером L |
LEN(strA) |
визначає кількість символів тексту strA |
VAL(strA) |
дане типу текст перетворює у числове |
STR(X) |
перетворює числове дане X в текст |
INSTR(A$,B$) |
дає номер позиції, з якої починається входження тексту B$ в текст A$ |
CHR$(число) |
дає символ з таблиці ASCII з даним номером |
ASC(символ) |
дає номер символу в таблиці кодів ASCII |
Space(N) |
додавання рядка пробілів заданої довжини |
Ucase(strA) |
Заміна регістра символів (ВСІ ЛІТЕРИ ВЕЛИКІ) |
Lcase(strA) |
Заміна регістра символів (всі літери маленькі) |
ХІД РОБОТИ
Уважно вивчіть теоретичні відомості.
Задача 1. Розробіть додаток для обчислення суми виплат за вкладом у банку, якщо річна відсоткова ставка становить 13 % при вкладі більшому 4000 тис. грн., а для менших за розміром вкладів – 12%.
Методичні рекомендації
Математична модель. При заданому розмірі початкового вкладу (V), заданому терміні вкладу (Т) і річній відсотковій ставці (р), сума виплат (S) обчислюється за формулою:
При цьому річна відсоткова ставка визначається за формулою:
У додатку потрібно задавати значення початкового розміру вкладу (V), значення терміну вкладу (Т), значення відсоткової ставки (р) і обчислювати значення суми виплат (S) відповідно до заданої формули. Значення цих величин можна описати типом — дійсні числа. Алгоритм обчислювального процесу має розгалуження при обчисленні відсоткової ставки залежно від розміру початкового вкладу.
Схема алгоритму має вид:
Рисунок 2.12.
Розробка інтерфейсу користувача:
При розробці інтерфейсу користувача потрібно врахувати необхідність введення даних про вкладника, розмір його початкового вкладу і термін вкладу.
Додаток має повідомляти суму виплат і річну відсоткову ставку.
Доречно розробити форму з 6 написами і 4 текстовими полями (рис. 2.13.). Потрібно ще у формі мати одну командну кнопку, яка б при клацанні на ній запускала процедуру обчислення суми виплати.
Рисунок 2.13.
Для реалізації розгалуженого обчислювального процесу у програмному коді має бути застосований умовний оператор, у цьому разі доречно застосувати конструкцію If... Then... Else. Звісно, змінні мають бути описані у коді процедури.
Зауваження. Цей проект додатка не є єдино можливим. Можна запропонувати інші варіанти.
Реалізація проекту у VBA
Розробіть схему алгоритму з використанням текстового редактору MS WORD.
Увійдіть в середовище VBA WORD командою Сервис-Макрос- Редактор Visual Basic;
Розробіть форму з назвою Виплати_розгалужений, в якій будуть такі об'єкти:
6 написів Label1 – Label6 (один напис для позначення даних про фізичну особу — ПІБ, один напис для позначення початкового вкладу, наступний напис — для терміну вкладу, один напис для позначення річної процентної ставки один напис для позначення суми виплат і ще один напис — для виведення результату обчислення суми виплат);
4 текстових поля. TextBox1 — TextBox3 для введення даних (одне поле для введення даних про фізичну особу — ПІБ, одне для введення розміру початкового вкладу і ще одне текстове поле для значення терміну вкладу). TextBox4 для виведення даних (значення річної відсоткової ставки).
одна командна кнопка CommandButtonl, з якою пов'язана подія – клацання на цій кнопці, що запускає на виконання процедуру обчислення суми виплат;
результат обчислення виводиться у напис з ім'ям Label6. Програмний код процедури потрібно розробити.
У вікні властивостей форми задайте для властивості Caption значення Виплати_розгалужений, для властивості ForeColor виберітьзі списку колір.
Для всіх написів задайте відповідне значення (властивість Caption), колір фону і вирівнювання по центру відповідно як подано на рис. 2.13.
Для текстових полів також задайте значення "пусто" (властивість Text), вирівнювання по центру.
Дотримайтесь вказаного на рис. 2.13. розташування об'єктів.
Для командної кнопки CommandButton1 встановіть значення Обчислити (властивість Caption), вирівнювання по центру..
Двічі клацніть на командній кнопці і у вікні редактора коду створіть код процедури як на рис. 2.14.
Запустіть розроблений проект на виконання, скориставшись відповідним меню або кнопкою панелі інструментів. При цьому на екрані з'явиться вікно форми Виплати_розгалужений, в якому у текстових полях потрібно задати значення відповідних величин і натиснути кнопку Обчислити. Після виконання обчислень у формі у написі Label6 буде виведено результат обчислення суми виплат, у текстовому полі TextBox4 буде виведена річна відсоткова ставка.
Рисунок 2.14.
У цьому варіанті коду процедури змінні:
V — зберігає значення початкового вкладу;
p — зберігає значення річної відсоткової ставки;
t — зберігає значення терміну вкладу;
S — зберігає значення суми виплати.
Значення суми виплати виводиться у форму у напис Label6.
Змінні явно описані за допомогою ключового слова Dim. Тому ці змінні є локальними, вони є видимими лише для цієї процедури.
Виконайте тестування програми. Перевірте роботу програми при значенні початкового вкладу менше 4000 грн. і при значенні початкового вкладу більше 4000 грн.
Збережіть програму.
Задача 2. Розробіть додаток для обчислення значень економічного показника Y залежно від значень економічного показника X, якщо залежність задана формулою:
Схема алгоритму має вид:
Рисунок 2.15.
Методичні рекомендації
Для реалізації розгалужень обчислювального процесу застосуйте конструкцію Select Case.
Відкрийте новий файл і увійдіть в середовище VBA WORD командою Сервис-Макрос- Редактор Visual Basic;
Розробіть форму за наведеним на рис. 2.16. зразком:
два написи (один напис для позначення значення Х, один напис для позначення значення Y);
два текстових поля (одне поле для введення значення X,одне поле для виведення результату обчислення значення Y);
дві командні кнопки (одна кнопка для виконання обчислень, друга кнопка для завершення роботи програми).
Рисунок 2.16 .Об'єкти управління та їх розміщення на формі
Для обробки події клацання на командній кнопці CommandButton1 та командній кнопці CommandButton2 розробіть коди процедур (рис. 2.17.):
Рисунок 17
Зверніть увагу на Функцію MsgBox. Вона виводить на екран діалогове вікно з повідомленням і очікує натиснення кнопки користувачем.
Запустіть розроблений проект на виконання, скориставшись відповідним меню або кнопкою панелі інструментів. При цьому на екрані з'явиться вікно форми Вибір, потрібно задати значення X і натиснути кнопку Обчислити. Після виконання обчислень у формі буде виведено результат обчислення значення Y.
Виконайте тестування програми. Перевірте роботу програми при значеннях Х з різних діапазонів, що задані умовою задачі.