
- •§ 1. Поняття про інформаційне моделювання
- •Опорний конспект
- •§ 2. Етапи розв’язання задач на комп’ютері
- •§ 3. Середовища розробки проектів
- •§ 4. Властивості елементів керування
- •§ 1. Поняття про інформаційне моделювання 2
- •Контрольна робота № 1
- •§ 5. Створення проектів
- •§ 6. Основні поняття мови програмування
- •9. Процедура кнопки «Обчислити» для задачі про калькулятор.
- •§ 7. Алгоритм та його властивості
- •Запитання
- •§ 8. Різновиди алгоритмів
- •Запитання
- •§ 9. Типи даних
- •§ 10. Лінійні програми
- •Запитання та вправи
- •Контрольна робота № 2
- •§11. Введення даних і виведення результатів
- •§ 12. Текстові файли даних
- •§ 13. Програми з розгалуженням
- •§ 1. Поняття про інформаційне моделювання 2
- •Запитання
- •§ 14. Елементи керування прапорці і перемикачі
- •§ 15. Алгоритмічна конструкція вибір
- •Контрольна робота № 3
- •§ 16*. Списки
- •§ 17. Підпрограми. Функції користувача
- •§ 18. Підпрограми. Процедури користувача
- •§ 19. Цикли. Цикл з параметром
- •§ 20. Задачі пошуку даних. Цикл «доки»
- •§ 21. Застосування циклів
- •Контрольна робота № 4
- •Розділ 2. Складені структури даних
- •§ 22. Одновимірні масиви. Створення масивів
- •§ 23. Пошук даних в одновимірному масиві
- •1. Пошук даних у масиві за заданим критерієм.
- •5. Проект «На метеостанції». Застосування масивів і процедур користувача у vb.
- •§ 24. Впорядкування одновимірного масиву
- •§ 1. Поняття про інформаційне моделювання 2
- •4. Моделювання предметних областей за допомогою масивів.
- •§ 25. Двовимірні масиви. Створення масивів
- •§ 26*. Опрацювання двовимірних масивів
- •1. Елементи керування DataGridView (vb) та DataGrid (vba).
- •Контрольна робота № 5
- •§ 27. Опрацювання текстових даних
- •§ 28. Структури даних (записи)
- •§ 1. Поняття про інформаційне моделювання 2
- •§ 29. Файли даних прямого доступу
- •5. Vb. Команди для роботи з файлами даних прямого доступу.
- •§ 30. Застосування файлів даних послідовного доступу
- •§ 31. Графіка у vb
- •§ 32. Поняття про об’єктно-орієнтоване програмування
- •Розділ 3. Задачі
- •Складніші задачі*
- •Розділ 4. Vba у програмах пакету ms office
- •§ 33. Застосування vba у ms word
- •§ 34. Vba у програмі ms excell
- •§ 35. Задача про облік товарів на складі
- •§ 36. Розв’язування математичних задач
- •§ 37. Робота 3 базами даних
- •Список літератури
- •§ 1. Поняття про інформаційне моделювання 2
§ 15. Алгоритмічна конструкція вибір
Алгоритмічна конструкція «вибір» — різновид конструкції розгалуження. «Вибір» зручно використовувати, коли є декілька умов, від яких залежить виконання тої чи іншої дії, а також тоді, якщо умови можна подати за допомогою набору значень.
1. Команда Select Case. Вибір реалізують у кодах за допомогою оманди вибору Select Case, що має такий загальний вигляд:
Select Case <вираз> Case «набір значень 1> «серія команд 1> Case <набір значень 2> «серія команд 2> … |
Case Else «серія команд> End Select |
Дія команди. Якщо значення виразу збігається із деяким значенням з набору, то виконується серія команд, записана під цим набором, інакше виконується серія, зазначена після службових слів Case Else. Частини команди Case Else «серія команд> може і не бути.
Набори значень після службового слова Case можна задати декількома способами. Вони наведені нижче на прикладах:
Case 4, 5, 6, 7 |
'список цілих значень від 4 до 7 |
Case 4 To 7 |
'дійсні значення від 4 до 7 |
Case is > 0 |
'значення, більші від 0 |
Case "A" To "Z" |
'("А", "В", "С" "Z"). |
Задача 1. Ввести номер місяця року. Вивести назву пори року.
Dim k As Integer, p As String
k = InputВох("Введіть k") 'k - номер місяця
Select Case k
Case 1,2,12
p = "Зима"
Case 3, 4, 5
p = "Весна"
Case 6, 7, 8
p = "Літо"
Case Else
p = "Осінь"
End Select
<вивести p>
Якщо k = 3, to p = "Весна", якщо k = 12, то p = "Зима".
2. Задача про країни. Продемонструємо використання команди вибору для розв’язування задачі про країни, яку ми розглядали в § 13.
Задача 2. Надати довідку про задану країну (назву столиці та кількості населення), застосувавши команду Select Case.
’ Задача про країни із Select Case
Dim kr As String, st As String, nas As Integer
10: kr = ІпріЛВох("Введіть назву країни")
Select Case kr
Case "Угорщина"
st = "Будапешт": nas = 11
Case "Італія"
st = "Рим": nas = 60
Case "Греція"
st = "Афіни": nas = 10
Case "Туреччина"
st = "Анкара": nas = 55
Case "Єгипет"
st = "Каїр": nas = 53
Case"Непал"
st = "Катманду": nas = 18
Case "Бельгія"
st = "Брюссель": nas = 10
Case Else
<вивести "Цієї країни немає у списку"> : GoTo 10
End Select
<вивести "столиця -" + St +", населення -" + Str(Nas) + _
"млн осіб">
Якщо користувач неправильно введе вхідні дані, то отримає повідомлення «Цієї країни немає у списку».
Правило. В алгоритмі треба передбачати реакції на можливі неправильні дії користувача.
Завдання 1. Виконайте програму в консольному режимі. Введіть на запит комп’ютера слово Італія й отримайте таку довідку про цю країну: столиця - Рим, населення - 60 млн осіб.
Завдання 2. Введіть під час діалогу як назву країни слово Україна. Отримаєте повідомлення «Цієї країни немає у списку» і запрошення продовжити роботу: «Введіть назву країни». Тепер введіть назву країни, яка зазначена в коді. Отримаєте відповідь.
Завдання 3. Додайте до коду дані ще про дві країни, які візьміть у мережі.
Завдання 4. Задачу 2 реалізуйте як проект. Виведіть дані (kr, st, nas) у три підписані текстові поля. Застосуйте кнопку «Обчислити», код для неї наведено вище. В код вставте додатково такі команди присвоєння:
TextBox1.Text = kr: TextBox2.Text = st: TextBox3.Text = nas
Завдання 5*. Дослідіть, яка орієнтовно відстань від Києва до цих країн, наприклад, з метою визначення часу авіаперельоту. Модифікуйте алгоритм і код так, щоб отримати відомості про цю відстань і час авіаперельоту. Швидкість літака 1000 км/год.
3. Задача про квитки. Розглянемо задачу про квитки в театр (подібні задачі — облік продукції на складі, купівля товарів, замовлення квитків на потяг чи літак).
Задача 3. Ціна квитка в театр залежить від ряду. Нехай рядів є 16. Вартість одного квитка в ряді з номером k визначається так:
Скільки коштуватимуть п квитків у ряді з номером k? Вхідні дані (п і k) ввести з клавіатури?
Розгляньте код розв’язування задачі.
' Квитки
Dim k, n, Сіnа As Integer
n = InputBox(“Введіть кількість квитків”)
k = InputВох(“Введіть номер ряду”)
Select Case k
Case 1, 2, 3
Сіnа = 60
Case 4 To 10
Cina = 40
Case 11,12, 13,14,15
Cina = 30
Case 16
Cina = 20
Case Else
<вивести повідомлення "Такого ряду немає">
End Select
<вивести Str(n) + " квитків у ряді" + Str(k) + _
" коштують" + Str(n * Сіnа) + " грн">
Завдання 1. Виконайте програму і введіть дані так: 5 (квитків) і 3 (ряд). Переконайтеся, що відповідь буде така: 5 квитків у ряді З коштують 300 грн.
Завдання 2. Модифікуйте програму на випадок іншої кількості рядів і цін у театрі (кінотеатрі, цирку).
Завдання 3*. Застосувавши команду переходу, організуйте цикл з метою виведення на екран довідки про ціни в усіх рядах (у вигляді таблиці з двома стовпцями: ряд, ціна).
Вправи
Замініть команду If х > 0 Then у = 1 Else у = 2 конструкцією Select Case.
Розв’яжіть задачу № 6 свого варіанта з розділу «Задачі».
Розв’яжіть задачу № 6 наступного варіанта з розділу «Задачі».