Домашнє завдання для 11-Б з інформатики!!!

Case

1. Максимальні неперервні інтервали роботи за комп’ютером для дітей орієнтовно такі: 6-8 років — 15 хв, 9-11 років — 30 хв, 12-15 років — 45 хв, 16-17 років — 60 хв. Сюжет алгоритму: комп’ютер запитує вік та час, уже проведений за комп’ютером, і повідомляє, скільки хвилин залишилося до закінчення сеансу роботи.

2. На станції є бензин кількох марок і з різною ціною. Клієнт вибирає марку бензину і називає кількість літрів. Обчислити вартість бензину.

3. Задайте відстані до міст А, В, С, D. Нехай на 100 км потрібно 7 л бензину. Комп’ютер запитує про пункт призначення (треба бу­де ввести одну букву) і повідомляє про необхідну кількість бензину.

4. Оплата міжміської телефонної розмови залежить від відстані. Складіть орієнтовну таблицю цін за 1 хв розмови з трьома містами. Задум: комп’ютер запитує першу літеру назви міста, повідомляє про тривалість розмови і суму до оплати.

 

IF

1. Дві точки на площині А (X1 ,Y1 ) і В (X2 ,Y2 ) задано своїми координатами.  Перевірити, чи лежать ці точки в одній  координатній чверті.
2. Комп′ютер визначає в якому агрегатному станi перебуває вода. Користивач задає тем-пературу води, а ЕОМ друкує: «РIДКИЙ СТАН», «ТВЕРДИЙ СТАН» чи “ГАЗОПО-ДIБНИЙ СТАН».

3. Скласти програму виконання арифметичної операції +, -, *, / над числами а та b залежно від натиснутої клавіші (1, 2, 3, 4).
4. Дано три дійсні числа. Написати програму, яка визначає середнє геометричне цих змінних, якщо вони відмінні від нуля та середнє арифметичне в протилежному випадку.
5. Координатами задано дві точки на площині (x1,y1,x2,y2 — координати). Написати програму, яка визначає, яка з точок знаходиться далі від початку координат.
6. За рейтинговою системою оцінка визначається таким чином: якщо загальний бал учня становить не менше 92% від максимального, то виставляється оцінка 12, якщо не менше 70%, то – оцінка 8, якщо ж не нижче 50%, то – оцінка 5, в інших випадках – оцінка 2. Визначте оцінку учня, якщо він набрав N балів, а максимальне значення загального балу становить S.

7. Якщо сума трьох попарно різних чисел x, y, z є меншою за одиницю, то менше з х та у замінити півсумою y і z, інакше – більше з x та z замінити на у3.

8. Задано два числа x та у:

а) перевірити чи ділиться х на у без остачі або чи ділиться у на х без остачі

б) значення х та у обидва парні або непарні.

4. За чотирицифровим цілим числом визначити:

а) чи є сума його цифр парною;

б) чи є воно «щасливим» (сума перших двох цифр дорівнює сумі двох останніх — 3746);

в) чи є воно паліндромом (читається зліва направо і справа наліво однаково — 2992);

г) чи збігаються його перша і друга частини (4545).

 

Цикли

1. Знайдіть та виведіть на екран суму та добуток чисел від 1 до n, кратних 3. Ввести п із клавіатури.
2. Число а підносять до квадрата, а результат збільшують на 1. Цю операцію виконують 4 рази.
3. Написати програму, яка знаходить суму додатніх чисел, які більші за 20, менші за 100, кратні трьом та закінчуються на 2, 4 або 8.
4. Знайти значення функції y=cos(2x) на проміжку [-1,1] з кроком 0,25 і обчислити середнє арифметичне від’ємних чисел

Цикли у Visual Basic (продовження)

4. Вихід з циклу за допомогою IF

Отже, як нам запрограмувати завершення роботи циклу? Для цього треба застосувати оператор GoTo всередині оператора If.

Задача: За допомогою циклу надрукувати:

Початок рахунку   3  5  7  9  11  13  15  …..  329  331  333   Кінець рахунку

Для зручності наладки програми змінимо завдання:

Початок рахунку  3  5  7  9  Кінець рахунку

Ось різні варіанти програми. Перший – найпростіший, а іншими ми будемо користуватися в майбутньому. Всі 4 варіанта виконують одні й ті ж дії, дуже схожі, але трохи відрізняються. Ось в цих відмінностях нам і потрібно розібратися.

Створимо проект з 4 кнопками та виконаємо в покроковому режимі всі 4 варіанти:

1 ВАРІАНТ (Do …. Loop While)

2 ВАРІАНТ   (Do …. Loop Until)

Private Sub Command1_Click()

Debug.Print «Початок рахунку»;

f = 3

m:    Debug.Print f;

f = f + 2

If f <= 9 Then GoTo m

Debug.Print «Кінець рахунку «

End Sub

Private Sub Command2_Click()

Debug.Print «Початок рахунок»;

f = 3

m1:  Debug.Print f;

f = f + 2

If f > 9 Then GoTo m2 Else GoTo m1

m2:  Debug.Print «Кінець рахунку»

End Sub

 

В якому порядку виконуються оператори першого варіанту? Тут оператор  GoTo m виконується три рази. На четвертий раз умова f<=9 стане неправильною і тому виконується не GoTo m, а наступний за If оператор Debug.Print «Кінець рахунку», тобто програми виходить з циклу і закінчує свою роботу.

3 ВАРІАНТ (Do  While …. Loop)

4 ВАРІАНТ (Do  Until …. Loop)

Private Sub Command3_Click()

Debug.Print «Початок рахунку»;

f = 3

m1:  If f <= 9 Then GoTo m3 Else GoTo m2

m3:  Debug.Print f;

f = f + 2

GoTo m1

m2:  Debug.Print «Кінець рахунку»

End Sub

Private Sub Command4_Click()

Debug.Print «Початок рахунку»;

f = 3

m1:  If f > 9 Then GoTo m2 Else GoTo m3

m3:  Debug.Print f;

f = f + 2

GoTo m1

m2:  Debug.Print «Кінець рахунку»

End Sub

Задача: Надрукувати пари чисел —  1  1001      2  1002      3  1003     …………..    100   1100.

Програма:

Private Sub Command1_Click()

f = 1

m:      s = f + 1000

Debug.Print f; s

f = f + 1

If f <= 100 Then GoTo m

End Sub

 

Завдання 6-10:

6.   А. Надрукувати  1  2  3  4 . . . 99  100

Б. Надрукувати    100  99 . . . 3  2  1.

В. Надрукувати    1  2  3  4 . . . 99  100  99 . . . 3  2  1.

7.  Обчислити та надрукувати з 6-ма десятковими знаками квадрати цілих чисел. 0.000  0.001  0.002  0.003 . . . 0.999  1.000.

8. Для х=2700, 900, 300, 100 . . . і т.д. обчислити та надрукувати  y = x/4 + 20  та z=2y+0.23  до тих пір, поки yz не стане менше 1/x.

  1. Нехай зображення, яке рухається екраном в попередніх задачах, через деякий час зупиниться.

10.  Зображення, пройшовши трохи зліва направо, повертає вниз та, пройшовши небагато шляху, через деякий час зупиняється.

 

5. Оператори циклу Do

Цикли настільки широко використовуються в програмах, що у програмістів давно з’явилась потреба написати спеціальний оператор циклу, який не використовуватиме оператор GoTo. Останній незручний хоча б тим, що у програмістів, які пишуть великі програми, багато часу йде на пошук поглядом міток в тексті програми.

До того ж GoTo порушує струнку ідеологію так званого «структурного програмування», коли порядок дій задається не стрибками по програмі, а ланцюжком вкладених один в одного операторів. Тобто, зараз широко використовувати оператор GoTo неправильно, так як і не оголошувати змінні (начебто і працює, але є ймовірність виникнення помилки)

Оператори циклу в Visual Basic поділяються на 2: Do и For. Оператори виду Do зустрічаються в 5 варіантах:

1 ВАРІАНТ

2 ВАРІАНТ

3 ВАРІАНТ

4 ВАРІАНТ

5 ВАРІАНТ

Do …. Loop

Do …. Loop While

Do …. Loop Until

Do  While …. Loop

Do  Until …. Loop

5.1   Оператор Do …. Loop

Спробуємо створити з використанням 1-го виду оператора Do програму розв’язку задачі про друк чисел 3  5  7  9 з попередніх завдань. Для того, щоб точно визначити роботу цього варіанта оператора  Do, наведемо її паралельно зі зміненим варіантом програми розв’язку з того ж прикладу.

 

1 ВАРІАНТ

1  ВАРІАНТ ОПЕРАТОРА  Do  

Private Sub Command1_Click()

Private Sub Command0_Click()

Debug.Print «Початок рахунку»;

Debug.Print «Початок рахунку»;

f = 3

f = 3

m:

Do

Debug.Print f;

Debug.Print f;

f = f + 2

f = f + 2

GoTo m

Loop

End Sub

End Sub

Do можна перекласти, як «Виконуй», а розуміти можна просто як мітку. Loop можна перекласти, як «Петля» або «Повернення назад», а розуміти можна як «Повертайся до мітки Do».

Порядок роботи обох програм абсолютно однаковий, так що можна вважати слово Do заміною мітки m, а слово Loop вважати заміною оператора GoTo m. Обидві програми нескінченно друкують 3  5  7  9  11… Переривається цикл лише з клавіатури. Толку поки в цьому варіанті ми бачимо мало (поки що).

Синтаксис оператора Do …. Loop:

Do

оператори

оператори …

Loop

Рядки операторів між Do та Loop називаються тілом циклу.

5.2  Оператор Do …. Loop While

Складемо з використанням варіанта 2 оператора Do програму розв’язку про друк чисел 3  5  7  9 з попередніх завдань. Для того, щоб точно визначити роботу цього варіанта оператора Do, наведемо її паралельно з першим варіантом програми.

2 ВАРІАНТ

2  ВАРІАНТ ОПЕРАТОРА  Do  

Private Sub Command1_Click()

Private Sub Command5_Click()

Debug.Print «Початок рахунку»;

Debug.Print » Початок рахунку»;

f = 3

f = 3

m:

Do

Debug.Print f;

Debug.Print f;

f = f + 2

f = f + 2

If f <= 9 Then GoTo m

Loop While f <= 9

Debug.Print «Кінець рахунку»

Debug.Print » Кінець рахунку «

End Sub

End Sub

While перекладається  «Поки».

Отже, Loop While f <= 9  розуміти потрібно так, «Повертатися до мітки Do, поки f <= 9″.

Отже  конструкцію Loop While f <= 9 можна вважати заміною оператора  If  f <= 9 Then GoTo m.

 

Синтаксис оператора Do …. Loop While:

Do

оператори

оператори …

Loop While умова продовження роботи циклу

5.3  Оператор Do …. Loop Until

3 ВАРІАНТ

3  ВАРІАНТ ОПЕРАТОРА  Do  

Private Sub Command2_Click()

Private Sub Command6_Click()

Debug.Print «Початок рахунку»;

Debug.Print «Початок рахунку»;

f = 3

f = 3

m1:

Do

Debug.Print f;

Debug.Print f;

f = f + 2

f = f + 2

If f > 9 Then GoTo m2  Else GoTo m1

Loop Until f > 9

m2: Debug.Print «Кінець рахунку»

Debug.Print «Кінець рахунку»

End Sub

End Sub

Until перекладається «До тих пір, поки». Отже, Loop Until f > 9  розуміємо, як «Повертайся до мітки Do до тих пір, поки не виконається умова f > 9».

Синтаксис оператора Do …. Loop Until:

Do   оператори

Оператори …

Loop Until условие завершения работы цикла

 

5.4  Оператор Do While …. Loop

4 ВАРІАНТ

4  ВАРІАНТ ОПЕРАТОРА  Do  

Private Sub Command3_Click()

Private Sub Command7_Click()

Debug.Print «Початок рахунку»;

Debug.Print «Початок рахунку»;

f = 3

f = 3

m1: If f <= 9 Then GoTo m3 Else GoTo m2

Do While f <= 9

m3: Debug.Print f;

Debug.Print f;

f = f + 2

f = f + 2

GoTo m1

Loop

m2: Debug.Print «Кінець рахунку»

Debug.Print «Кінець рахунку»

End Sub

End Sub

Do While f <= 9  розуміємо так: «Поки f <= 9 виконуй оператори до оператора Loop».

 

Синтаксис оператора Do While …. Loop:

Do  While умова продовження роботи циклу

оператори

оператори …

Loop

5.5 Оператор Do Until …. Loop

4 ВАРІАНТ

4  ВАРІАНТ ОПЕРАТОРА  Do  

Private Sub Command4_Click()

Private Sub Command8_Click()

Debug.Print «Початок рахунку»;

Debug.Print «Початок рахунку»;

f = 3

f = 3

m1: If f > 9 Then GoTo m2  Else GoTo m3

Do Until f > 9

m3: Debug.Print f;

Debug.Print f;

f = f + 2

f = f + 2

GoTo m1

Loop

m2: Debug.Print «Кінець рахунку»

Debug.Print «Кінець рахунку»

End Sub

End Sub

Do Until f > 9  розуміємо так: «Виконуй оператори, що записані нижче до Loop, до тих пір, поки не виконається умова f>».

 

Синтаксис оператора Do Until …. Loop:

Do Until умова завершення роботи циклу

оператори

оператори

Loop

Задача: Комп’ютер пропонує користувачу ввести слово, після чого роздруковує слово, додавши до нього знак оклику. Потім знову пропонує ввести слово і так до тих пір, поки людина не надрукує «Досить». Роздрукувавши його зі знаком оклику, комп’ютер друкує «Досить, так досить» і закінчує роботу.

Візьмему рядкову змінну, в яку буде записуватись слово, введене з клавіатури. Назвемо її Slovo.

Dim Slovo As String

Private Sub Command1_Click()

Do

Slovo = InputBox(«Введіть слово»)

MsgBox(Slovo & «!»)

Loop Until Slovo = «Досить»

 

MsgBox(«Досить так досить»)

End Sub

 

 

Завдання 11: Змінимо задачу. Нехай комп’ютер перед тим, як роздрукувати кожне слово додає його порядковий номер.

Завдання 12-13: Виконати з використанням оператора Do завдання 7 та 10 з попереднього переліку.

Завдання 14:  якщо камінь кинути горизонтально зі 100-метрової вежі зі швидкістю v=20м/с, то його відстань від вежі по горизонталі  s  буде виражатися формулою s=vt, где t – час польоту каменя в секундах. Висота над землею  h буде виражатись формулою h=100 – 9.81t2/2. Обчислювати та друкувати t, s та h для t = 0,  0.2,  0.4,  0.6 і так далі до тих пір, поки камінь не впаде на землю.

 

Бажаємо успіхів!

=)))

Цикли у Visual Basic (теорія)

  1. Циклічні програми.

Ідею циклу можна пояснити на прикладі руху об’єктів по екрану. Візьмемо гру в повітряний бій. Літачок по екран повинен рухатись. Але в списках операторів більшості мов програмування немає команди руху.

Тут постає питання – а що ж таке рух? Розглянемо ілюзію руху, яка виникає на екрані кінотеатру. Якщо ви тримали колись в руках кіноплівку, то помічали, що вона складається з багатьох нерухомих кадрів, на яких зображення кожного разу трішки змінюється. Демонструючи ці кадри з великою швидкістю, ми створюємо ілюзію руху. Так само утворюється рух на екрані комп’ютера.

Запишемо алгоритм руху літака по екрану зліва направо.

  1. Задаємо комп’ютеру позицію літака в лівій частині екрану.
  2. Зображуємо літак.
  3. Переглядаємо
  4. Змінюємо позицію літака на міліметр вправо
  5. Переходимо до команди 2.

 

Кожна з цих команд легко програмується на будь-якій мові програмування. Кожен комп’ютер, виконавши чергову команду, переходить до наступної. Виконавши команду 2, комп’ютер переходить до команди 3. Але ми можемо змінити порядок, що ми і зробили в пункті 5. Таким чином деякі команди повторюються багатократно.

Така багатократно виконувана послідовність називається циклом.

Можна сказати, що цикл – це один із засобів змусити комп’ютер довго працювати за допомогою короткої програми.

В короткому проміжку часу після виконання команди 2 літак буде з’являтись на екрані і на команді 3 зникати, але цього достатньо, щоб людське око його побачило.  Завдяки циклу літак буде «мигати» кожного разу в іншому місці, а так як зміна кадрів відбувається з високою швидкістю, нам буде здаватись, що відбувається плавний рух.

Але не потрібно думати, що цикли застосовуються лише при оформленні рухомих об’єктів. Вони пронизують все програмування.

2. Оператор  переходу GoTo. Мітки.

Поглянемо, як реалізувати в Visual Basic. Допустимо, що ми хочемо щоб комп’ютер нескінченно повторював виконання такого фрагменту.:

 

Debug.Print «Це «;

Debug.Print «тіло «;

Debug.Print «циклу»;

Debug.Print »       «;

в результаті чого ми у вікні виведення результатів побачили б:

Це тіло циклу      Це тіло циклу   Це тіло циклу   Це тіло циклу   …

Якби оператори Visual Basic можна було б писати українською мовою, то конструкція повторення виглядала б так:

мітка m1: Debug.Print  «Це » ;
Debug.Print  «тіло » ;
Debug.Print  «циклу» ;
Debug.Print  »       » ;
йти (повернутися) до оператора, поміченого міткою m1

Тут ми бачимо новий оператор «йти», робота якого полягає в «перескакуванні» до виконання оператора Debug.Print  «Це » , поміченого міткою m1.

А ось так цей фрагмент виглядає на Visual Basic:

Private Sub Command1_Click()

m1: Debug.Print «Це «;

Debug.Print «тіло «;

Debug.Print «циклу»;

Debug.Print »       «;

GoTo m1

End Sub

Тут GoTo — оператор безумовного переходу, перекладається, як «йти до», m1 — мітка.

Мітка — це довільне ім’я. Оператор GoTo можна писати в будь-яких місцях процедури. Мітку можна ставити перед будь-яким оператором процедури, змушуючи таким чином комп’ютер переходити до потрібного рядка. Мітка повинна закінчуватись двокрапкою.

Зациклення. Якщо запустити цю програму, то через деякий час виникне проблема виходу з цієї програми. Кнопки не реагують на мишу і клавіатуру. Відбулося зациклення.  Для переривання роботи програми можна скористатися комбінацією Ctrl-Break. Програма перериває свою роботу, але не закінчує, вона знаходиться в режимі переривання.

Група операторів, які виконуються багатократно називається тілом циклу. У нас це всі оператори, починаючи з Debug.Print  «Це »  та закінчуючи GoTo m1.

 

Завдання 1: Визначити без комп’ютера, що буде друкувати програма:

n = 10

k = 0

Debug.Print «Рахуємо зайців»

m5: Debug.Print n;

n = n + k

GoTo m1

n = n + 1

m1:      Debug.Print «зайців»

k = k + 1

GoTo m5

Debug.Print «Порахували зайців»

Давайте переглянемо програму в покроковому режимі (F8).

 

Задача: Нескінченно друкувати  200  205  210  215   220   225   …

Програма:

Private Sub Command1_Click()

n = 200

m1:   Debug.Print n

n = n + 5

GoTo m1

End Sub

 

Завдання 2-4:

Написати програми для виконання таких завдань:

  1. Нескінченно друкувати літеру А:    ААААААААААА…..
  2. Нескінченно друкувати 10000   9999   9998   9997   9996 ……
  3. Нескінченно друкувати 100   50   25   12.5…. с 8 десятковими знаками.

 

Рух об’єктів по екрану

Вам вже доводилось змушувати рухатись кнопки по екрану. Спробуємо тепер досягти плавного руху об’єкту. Створіть проект з великою формою та додайте на нього елемент керування Image. Помістіть його в лівій частині форми. Надайте йому картинку  (властивість Picture).

Напишемо програму, яка б рухала зображення плавно направо:

Dim x As Double

Private Sub Command1_Click()

x = Image1.Left   ‘комп’ютер визначає, звідки починати рух

m1: x = x + 1      ‘комп’ютер збільшує горизонтальну координату на 1

Image1.Left=x ‘зображення стає на нове місце

GоTo m1

End Sub

Якщо рух виходить сильно повільним, то треба збільшити крок – x=x+2. Якщо сильно швидким – зменшити (x=x+0.3)

 

Завдання 5:   Створіть програму, яка буде переміщати зображення наліво, вгору, вниз.

Поки що ми не можемо ніяк впливати на рух, а можемо лише зупиняти комп’ютер з клавіатури. Як запрограмувати зупинку програми в певному місці?

Практична робота №5

Завдання.

Створити форму для обчислення середнього балу успішності учня. Число предметів, які оцінюються  — чотири. На формі розмістити п’ять елементів для введення/виведення даних (TextBox),  6 написів (Label) і дві кнопки (CommandButton).

Порядок виконання роботи

  1. Запустіть програму Visual Basic 6.
  2. Створіть новий проект командою File, New Project.
  3. Дайте формі ім’я і заголовок (Name, Caption) у вікні Властивостей (Properties).
  4. Розмістіть на формі написи (Label) і  для кожної з них визначіть властивості:

—          ім’я (Name);

—          вирівнювання тексту – по центру (Alignment, Center).

1. Розмістіть на формі  вікна для введення оцінок, використовуючи елемент управління  TextBox. Для кожного вікна визначите властивості:

—          ім’я (Name);

—          початкове значення поля – порожньо (Text, видалите інформацію);

2.Розмістіть командні кнопки, використовуючи елемент управління CommandButton. Для кожної кнопки визначите властивості:

—          ім’я (Name);

—          найменування (Caption);

Решта властивостей об’єктів приймається за замовчанням.

Код програми:

Private Sub cmdVved_Click()

fiz = Val(txtFizika.Text)

mat = Val(txtMatematika.Text)

inf = Val(txtInformatika.Text)

fizk = Val(txtFizkultura.Text)

Sb = (fiz + mat + inf + Fizk) / 4

txtSrBall.Text = Sb

End Sub

Рядкові величини у Visual Basic.

Рядкові змінні дуже важливі. Без них, наприклад, неможлива «розмова» з комп’ютером. Та і взагалі, значна частина інформації, з якою працює комп’ютер, текстова (тобто рядкова).

Оголошення Dim b As String говорить про те, що змінна b має текстове значення, тобто її значенням буде не число, а довільний ланцюжок символів, наприклад, Привіт всім! або рпН2Н(*fD6:u.

Для присвоєння деякого значення текстовій величині можна використовувати оператор присвоєння: а=»Привіт усім!»

Зверніть увагу, що в програмі текст повинен братися в подвійні лапки, а в пам’яті він зберігається без лапок і на екран виводиться без лапок.

Другий спосіб присвоєння значення – через оператор InputBox:

Dim a As String

Private Sub Command1_Click()

a = InputBox(«Введіть довільне слово»)

Text1.text= a

End Sub

Багато функцій, які зустрічаються в мові Бейсік, є складовою частиною мови і називаються стандартними функціями. Назвіть деякі з них (ABS(X), COS(X), SIN(X), SQR(X) і т. д.) Ці функції є числовими і обробляють числові значення.

Для роботи з символьними  величинами – теж є свої функції. Вони називаються рядковими (символьними) функціями. Кожна така функція має унікальне ім’я, по якому відбувається звернення до неї.

 

Складання текстових величин.

Над текстовими змінними можна виконати наступні дії – складання, порівняння, виділення або вставка символу, складання або конкатенація – це запис однієї змінної услід за іншою без пропуску.

Приклад 1. Скласти текстові змінні v та r.

V = «Visual»

r = «Basic»

D = v + » » & r

Text1.Text = D

Результат: Visual Basic

Знаки + і & в ході складання текстових змінних рівноцінні. Відмінність знаків полягає в тому, що & може об’єднувати рядкові дані з числовими, змінюючи їх значення на тип Variant.

Приклад 2. Скласти в єдиний рядок число 1 і слово «Травня».

n = 1

A = «Травня»

Text2.Text = n & A

Результат: 1 Травня

Функція Len

Len використовується для визначення кількості символів в текстовій змінній. Формат функції:

Х=len(A), де  Х — числова змінна, якій присвоюється кількість символів змінної A.

Зверніть увагу! Рахуються не тільки букви, але і пропуски, розділові знаки, окрім лапок.

Аргументом функції LEN повинна бути символьна величина. Результатом є ціле число, від 0 до 255.

LEN ( “SOS”) = 3

LEN (“ ***** “ ) = 5

LEN (“ ”) = 0

Приклад 3. Присвоїти текстовій змінній рядок «програмування» і визначити скільки в ній знаків.

А = “програмування”

X = Len(A)

Text3.Text = X

Результат: 13

Ця функція незамінна при організації циклів по обробці і аналізу тексту.

Функція Left

Дана функція виділяє перші n знаків з рядкової змінної А. Формат функції:

B=Left(A, n), де А – рядкова змінна, n – кількість символів, що виділяються.

Приклад 4.

C = «abcdefg»

D = Left(C, 3)

txtRes.Text = D

Результат: abc

Функція Rigth

Дана функція виділяє останні n знаків з рядкової змінної А. Формат функції:

B=Right (A, n), де А – рядкова змінна, n – кількість символів, що виділяються.

Приклад 4.

C = «abcdefg»

D = Right(C, 3)

txtRes.Text = D

Результат: efg

Функція Mid

1. Дана функція виділяє k знаків з рядкової змінної А починаючи з позиції n. Формат функції:

B=Mid (A, n, k), де А – рядкова змінна, n – позиція, з якої починається виділення, k – кількість символів, що виділяються.

Приклад 4.

C = «Привіт, світ»

D = Mid(C, 4, 3)

E = Mid(C, 9, 4)

Text3.Text = D + »  » + E

Результат: віт світ

2. Якщо Mid стоїть перез знаком = , то ця функція заміняє символи у вихідній змінній. Формат функції:

B=Mid (A, n, k), де А – рядкова змінна, в якій заміняються символи,  n – позиція, з якої починається заміна, k – кількість символів, що заміняються.

Приклад 5. Текстовій змінній A, починаючи з 3-го, заменити 2 символи на перші 2 символа змінної B.

A = «123456»

B = «abc»

Mid(A, 3, 2) = B

txtOutput.Text = A

Результат:12ab56

Функція String

STRING( N, M ) створює рядок з N однакових символів, рівних першому символу рядка M.

Приклади:

STRING ( 20, “ * ” )= “********************”

STRING ( 5, “ ПРИВЕТ” ) = “ППППП”

Функція Instr

Функція INSTR ( [N ], X, Y ) ( від англ. Inspect STRing – проглянути рядок ) проводить пошук першого входження підрядка Y в рядок X починаючи з N-го символу рядка X. Якщо N не задане, пошук виконується з першого символу. Значенням функції є ціле число – номер позиції входження (0 – якщо рядок не знайдений).

Приклади:

InStr(«Іван Іванович», «Іван») = 1

InStr(«Крокодил», «код») = 4

Таблиця функцій для обробки текстових величин.

Функція

Результат

Пояснення

«Мото»  + «ролер»

Моторолер

Операція + над рядками поєднує рядки в один. VB може переплутати її з додаванням чисел

«Мото»&«рол»&«ер»

Моторолер

Операція  &  теж поєднує рядки в один. Її рекомендується завжди застосовувати замість +

Len («Чук та Гек»)

10

Довжина рядка разом з пробіла

Mid («Астроном» , 3, 4)

трон

Частина рядка довжиною 4, починаючи з 3-го символу

Mid («Чук та Гек», 5, )

т

5-й символ в рядку

InStr(«Астроном»,»трон»)

3

Номер символу, з якого рядок «трон» розташовано в рядку «Астроном»

InStr(«Астроном»,»торт»)

0

Рядок «торт» не знайдено в рядку «Астроном»

Left («Перемога», 2)

Пе

2 лівих символи в рядку

Right («Перемога», 3)

ога

3 правих символи в рядку

Ucase («астРОнОм»)

АСТРОНОМ

Все символи рядка переводяться в верхній регістр

Lcase («астРОнОм»)

астроном

Все символи рядка переводяться в нижній регістр

Str (5 * 5)

25

Число 25 перетворюється в рядок «25».

«Ж» &  LTrim(»    Текст1  Текст2   «)  &  «Ж»

Жтекст1  текст2     Ж

Функція LTrim відсікає зайві пробіли зліва від слова

«Ж» &  LTrim(»    Текст1  Текст2   «)  &  «Ж»

Ж   текст1  текст2Ж

Функція RTrim відсікає зайві пробіли справа від слова

«Ж» &  LTrim(»    Текст1  Текст2   «)  &  «Ж»

Жтекст1  текст2Ж

Функція Trim відсікає зайві пробіли справа та зліва від слова

Опис величин у Visual Basic. Змінні та константи.

1. Алфавіт мови VB

Для запису операторів, функцій, імен, арифметичних виразів використовуються:

  • всі  прописні і рядкові букви латинського алфавіту;
  • арабські цифри;
  • спеціальні знаки

! & ‘ $ ?, . { } ( ) [ ] = — + _ ^ % / ~ < > : ;.

2. Ім’я змінної

Імена змінних вибираються по наступних правилах:

  • імена повинні починатися з букви, але не з цифри;
  • у імені допускається знак підкреслення, решта всіх знаків заборонена;
  • не допускається, щоб імена мали пропуски;
  • довжина імені не повинна перевищувати 255 символів;
  • ім’я не повинне співпадати ні з яким ключовим словом, функцією або оператором VB;
  • всі процедури і модулі повинні мати різні імена.

Таблиця 1

Приклади імен змінних

Допустимі імена

Неприпустимі імена

A

Ім’я більше 255 символів

Go4Ln

1p

SUMMA

P 1

P1

W?

S_1

Sub

У VB прописні і рядкові букви не розрізняються, але введені прописні букви зберігаються.

3. Оголошення змінних

Кожну змінну перед використанням слід оголосити. У Visual Basic ви можете застосовувати такі типи даних:

  • числовий (integer, Long, Single, Double, Currency);
  • рядковий (String);
  • типу дата (Date);
  • логічний (Boolean);
  • довільний (variant);

Тип даних Variant є універсальним. Змінна цього типу може зберігати будь-який з вище описаних типів даних. Всі необхідні перетворення виконуються при привласненні змінній значення. Об’єм оперативної пам’яті залежить від типу привласненого значення, але не може бути менше 16 байт.

При розробці програм в середовищі Visual Basic залежно від типу даних змінних рекомендується використовувати префікси, приведені в табл. 5.1.

Таблиця. Префікси, використовувані в назвах змінних

Тип даних

Префікс

Приклад

Boolean

bin

binSuccess

Date

dtm

dtmFinish

Double

dbl

dblSum

Integer

int

intQuantity

Long

Ing

IngTotal

Single

sng

sngLength

String

str

strLastname

Variant

vnt

vntValue

 

4. Оператор опису змінних

У Visual Basic використовується явне і неявне оголошення змінній. Явне оголошення здійснюється операторами Dim, private, Static, public, які мають наступний синтаксис:

Dim Ім’яЗмінної  As типДанных

Private Ім’яЗмінної As типДанных

Static Ім’яЗмінної As типДанных

Public Ім’яЗмінної As типДанных

Оператори Dim, Private, static, public визначають область дії змінної. За допомогою одного оператора ви можете оголошувати декілька змінних, розділяючи їх комами.

Приклади оголошення змінних приведені нижче:

Private binSuccess As Boolean

Dim strLastname As String, dblSum As Double

Область дії змінних

Для створення змінної, яку ви хочете визначити як глобальну, в розділ General Declarations головного модуля додатку помістіть оператор public. Наприклад:

Public gdtmFinish As Date

Для оголошення локальної змінної усередині модуля або форми, використовуйте оператор private або Dim в розділі General Declarations модуля або форми (мал.) В цьому випадку оголошена змінна буде доступна для тих процедур, що входять у форму або модуль, але в той же час недоступна в процедурах інших модулів і форм.

Змінні, локальні на рівні процедури, створюються операторами Dim або static усередині процедури. Наприклад:

Sub CalcTotal

Dim bSuccess As Boolean

End Sub

Для оголошення константи на рівні процедури використовується оператор Const, що має наступний синтаксис:

Const имяКонстанты As типДанных = вираз

Наприклад:

Const strDBErrorMessage As String = «Помилка доступу до бази даних»

5. Знаки операцій

У VB операція є або спеціальним символом, або ключовим словом у виразі, який комбінує два значення з метою отримання нового результату.

VB розділяє операції на три головні категорії: арифметичні, логічні і операції порівняння.

Якщо вираз містить знаки операцій з двох або більш за категорії, то VB виконує операції з різних категорій в наступному порядку:

1)        арифметичні;

2)        операції порівняння;

3)        логічні операції.

Щоб змінити послідовність виконання операцій, у виразі використовують дужки. Усередині кожної категорії операцій теж є правила порядку виконання операцій (табл. 3).

Таблиця 3

Порядок виконання операцій в VB

Знаки операцій

Операції

Арифметичні

^

Піднесення до ступеня

* або /

Множення або ділення

\

Цілочисельне ділення

Mod

Обчислення остачі від ділення

+ або —

Додавання або віднімання

6. Математичні функції

У VB, як і в інших застосуваннях Microsoft Office, є вбудовані математичні функції. Ці функції можна використовувати в арифметичних виразах для обчислення, наприклад, цілої частини числа, модуля числа, синуса числа і ін.

Математичні функції VB

Функція

Опис

Abs(N)

Модуль числа N

Atn(N)

Арктангенс числа N. Значення аргументу від – ¥ до + ¥

Cos(N)

Косинус  аргумента

Exp(N)

Повертає число е, возведенное в указанную степень

Fix(N)

Округлення

Int(N)

Ціла частина

Log(N)

Натуральний логарифм аргумента

Rnd(N)

Випадкове число в  інтервалі від 0 до 1

Round(N, [дес])

Повертає число, округлене до заданої кількості десяткових знаків

Sgn(N)

Повертає знак числа: 1 , якщо N>0;  0 ,  якщо N=0;  -1, якщо  N<0

Sin(N)

Обчислює синус кута

Sqr(N)

Корінь квадратний з аргумента

Tan(N)

Тангенс угла

Val(C)

Перетворює аргумент символьного типу в число

 

7. Оператор присвоєння

Перш ніж використовувати змінну в програмі, їй необхідно присвоїти значення. Найпростіший спосіб присвоєння полягає у використанні оператора присвоєння «=», який має наступний синтаксис:

змінна = вираз

Аргумент змінна задає ім’я змінної, якій буде присвоєно значення виразу, що стоїть праворуч від знаку рівності. Наприклад:

sngFirst = 10

strLastname = «Іванов»

Праворуч від знаку рівності може стояти не тільки константа, але і складніший вираз. Наприклад:

sngResult = sngFirst + 255

strName = «Іванов» & «: » & strTeam

8. Введення даних

Для складання програм необхідно в пам’ять ЕОМ ввести дані. Вводити дані можна кількома  способами. Найпоширеніші:

  1. За допомогою оператора присвоєння.

Приклад

а = 2

b = 4.5

  1. За допомогою елемента TextBox
  2. За допомогою оператора зчитування InputBox(“Повідомлення”).

Даний оператор виводить на екран діалогове вікно, що містить повідомлення і поле введення, встановлює режим очікування введення тексту користувачем або натиснення кнопки, а потім повертає значення типу String, що містить текст, введений в поле.

Приклад

A = InputBox (“Введіть А”)

На екрані з’явиться діалогове вікно (мал. 2).

Якщо оператор залишити у такому вигляді, то змінній А привласниться значення символу “2”, а не числа 2.

Для перетворення символу в число використовуватимемо функцію Val(Рядок), яка повертає число, що міститься в рядку, як числове значення відповідного типу.

Якщо ми запишемо A = Val (InputBox (“Введіть А”)) і в полі введення введемо число 2, то змінній А привласниться значення числа 2.

 

9. Оператор виводу

Виведення інформації в VB можна здійснювати за допомогою відомим вам елементів (TextBox, Label), а також за допомогою оператора виводу — MsgBox (Список аргументів)

Цей оператор виводить на екран діалогове вікно, що містить повідомлення, встановлює режим очікування натиснення користувачем кнопки, а потім повертає в програму.

Приклад: MsgBox (“Значення А=” & A)

В результаті на екрані з’явиться наступне діалогове вікно (мал. 3). У цьому операторі можна виводити значення декілька змінних.

Приклад: MsgBox (“Значення А=” & A & “,  значення В=” & B)

Символ “&” означає злиття в один рядок всіх символьних рядків, записаних в дужках.

Для виведення даних можна використовувати маски виводу.

Наприклад, для виведення дробового числа з трьома знаками після коми треба дати команду:

MsgBox «Результат Y=» & Format(y,»#0,000″)

 

10. Лінійний процес

Лінійним обчислювальним процесом називається процес, в якому всі оператори виконуються послідовно один за одним.

Приклад 1. Задано два числа. Обчислити їх суму, добуток та частку.

Sub PR1()

Dim а As Integer, b As Integer, s As Integer, p As Integer

Dim ch As Double

а = Val(InputBox(«Введіть А»))     ‘ введення першого числа

b = Val(InputBox(«Введіть В»))     ‘ введення другого числа

s = а + b                          ‘ обчислення суми

MsgBox («сумма=» & s)              ‘ виведення суми

p = а * b                          ‘ обчислення добутку

MsgBox («добуток=» & p)                   ‘ виведення дотку

ch = а / b                         ‘ обчислення частки

MsgBox («частка=» & ch)           ‘ виведення частки

End Sub

У програмі можна писати коментарі – пояснення до вашої програми, які призначені для користувача, а не для комп’ютера. Коментарі починаються з символу ‘ (апостроф). Все, що написане в рядку програмної коди праворуч від апострофа, вважається коментарем.

Якщо ви хочете розмістити декілька операторів в один рядок, то для цього необхідно записати цих операторів через двокрапку. Для запису декількох операторів в одному рядку між ними ставиться двокрапка.

Приклад 2.Задані цілі числа а, b, с. Обчислити значення виразу

Private Sub Command2_Click()

Dim a As Integer, b As Integer, c As Integer, y As Double

 

a = Val(InputBox(«Введіть А»))

b = Val(InputBox(«Введіть В»))

c = Val(InputBox(«Введіть C»))

y = (Sqr(a + b)+b^2)/(a+b+c)^3

MsgBox («Y=» & Format(y, «#0.00»))

 

End Sub

Практична робота №4

Практична робота № 4. Використання елементу лічильник.

Об’єкти: UpDown, TextBox, Label, Slider, CheckBox, Frame

Мета роботи. Створити форму з лічильником, з таблицею множення.

 

1. Робота лічильника.

Компонент «лічильник» додається на панель інструментів таким чином:

—         права кнопка миші на панелі

—         Components

—         Microsoft Windows Common Controls – 2

—        інструмент UpDown («лічильник») має два режими  — автономний та приєднаний. Нам простіше використовувати приєднаний. При цьому за лічильником слідкуватиме сам об’єкт.

 

Властивості:

—         AutoBuddy – true (приєднаний лічильник)

—         Buddy Control – text1 (приєднаний об’єкт)

—         Buddy Property – text (властивість приєднаного об’єкту)

—         Max – максимальне значення лічильника

—         Min – мінімальне значення лічильника

 

Private Sub Text1_Change() –

процедура, що оброблює події при зміні тексту в текстовому полі

 

В поле користувач може вводити і числа, і текст. Для того, щоб програма сприймала введений текст, як число існує функція Val, яка перетворює текстові дані в числові величини. Якщо користувач введе в поле текст, то значення цієї змінної буде рівне 0.

Давайте використаємо допоміжну змінну і:

i=Val(Text1.text)

Якщо користувач вкаже число більше або менше за можливі, то автоматично має відбутися заміна введеного значення на найближче з мождивих.

if i<0 then i=1

if i>100 then i=100

 

Готова програма має такий вигляд

Private Sub Text1_Change()

i = Val(Text1.Text)

If i < 1 Then i = 1

If i > 100 Then i = 100

Label1.Font.Size = i

End Sub

2. Таблиця множення.

Компонент Slider («повзунок») додається на панель інструментів таким чином:

—         права кнопка миші на панелі

—         Components

—         Microsoft Windows Common Controls – 6

Властивості:

—         Max – максимальне значення «повзунка»

—         Min – мінімальне значення «повзунка»

—         Value – задає біжуче положення «повзунка»

—         SmallChange – найменша зміна (стрілки вгору, вниз, вліво, вправо). Наприклад, 1.

—         LargeChange  — великі зміни (PageUp, PageDown). Наприклад, 7.

—         TickFrequency – частота засічок. Наприклад, 7.

 

Додаємо рамку для відображення результату Frame, Label1, Label2, Label3, CheckBox.

 

Повний код програми:

Private Sub Check1_Click()

Slider2.Value = Slider1.Value

End Sub

 

Private Sub Slider1_Change()

Label1.Caption = Str$(Slider1.Value)

Label3.Caption = Str$(Slider1.Value * Slider2.Value)

If Check1.Value = 1 Then

Slider2.Value = Slider1.Value

End If

End Sub

 

Private Sub Slider2_Change()

Label2.Caption = Str$(Slider2.Value)

Label3.Caption = Str$(Slider1.Value * Slider2.Value)

End Sub

Задачі до Практичної роботи №1

Задачі до Лабораторної роботи № 1.

 

Задача 1.1. Вставте у форму третю фотографію (фото вашого будинку чи машини) і ще одну кнопку з відповідним підписом, яка ії висвітлюватиме. Якщо файлу з такою фотографією немає, скористайтесь будь-яким файлом з бібліотеки Clipart (див. п. 11).

 

Задача 1.2. Поміняйте підписи до кнопок на такі: «Змінити фотографію» та «Забрати фотографію», перепрограмувавши кнопки відповідно до нового призначення. Запишіть фрагменти зміненого програмного коду у звіт. Виконайте програму і пере­конайтесь у правильності її роботи.

Підказка. У тексті процедур, що описують роботу кнопок, можна скористатися командами вигляду:

If Image 1.Visible = True Then… ‘Якщо видимість = True

Або рівносильною командою

If Image 1. Visible Then‘Тут умова також істинна, якщо видимість увімкнена

Задача 1.3. Поміняйте сценарій роботи програми для задачі 1.2 на наступний:

  • відразу після запуску програми фотографій не видно, є дві кнопки «Портретна фотографія» і «Забрати фотографію» , доступною є лише перша кнопка;
  • після клацання на кнопці «Портретна фотографія» у формі з’являється портретне фото та нова кнопка «Художня фотографія», а кнопка «Портретна фотографія» зникає, стає доступною кнопка «Забрати фотографію»;
  • після клацання на кнопці «Художня фотографія» фотографія у формі змінюється на художню, з’являється кнопка «Портретна фотографія»;
  • після клацання на кнопці «Забрати фотографію» фотографія зникає і ця кнопка стає недоступною.

Запишіть фрагменти програмного коду у звіт. Виконайте програму і переконайтесь у правильності її роботи.

Підказка. У тексті процедур, які описують роботу кнопок, можна скористатися командами, що змінюють властивості кнопок Caption (підпис), Visible (видимість), Enabled (доступність).

 

Задача 1.4. Окрім вимог, поданих в умовах задачі 1.3, після кла­цання на кнопці «Забрати фотографію» ця кнопка стає не лише недоступною, але і невидимою.

 

Властивості об’єктів

Об’єкт Form використовують для ство­рення нового вікна.

Властивість

Опис властивості

Приклади значень

ScaleMode

Одиниці вимірювання лінійних розмірів

Twip (твіп), Point, Pixel

BorderStyle

Можливість змінюва­ти розміри вікна

Sizeable (вікно з довіль­ними розмірами)

Width, Height

Ширина і висота вікна

503, 224 (числове значення)

Font

Шрифт

Комплексна власти­вість, задається у діалоговому вікні

Icon

Задаємо піктограму, яка буде в заголовку форми під час вико­нання програми

(None) — стандартна пік­тограма, або завантаже­на з певного файлу *.ісо

Name

Ім’я форми

Form1 (ідентифікатор)

Caption

Заголовок форми

Довільний рядок символів

BackColor

Колір фону форми

• ToolTip, Desktop (перелічуваний тип) або

• &Н0000С0С0& (числове значення -задається у діалого­вому вікні)

Enabled

Доступність для дій під час виконання програми

True, False

Left, Top

Координати лівого верхнього кутка вікна

200, 108 (числове значення)

WindowState

Стан вікна у момент запуску програми

Normal, Maximized, Minimized

 

 

Елемент управління Command Button (Командна кнопка)один з найбільш широко поширених елементів управління в Visual Basic. Командна кнопка застосовується для запуску (start), припинення (pause), або закінчення (end) якого-небудь конкретного процесу. Командну кнопку можна вибрати у вікні інструментів. Виглядає вона так:

Властивості

Опис

Name

Ім’я використовується для позначення командної кнопки. Три букви префікса для командної кнопки – cmd.

Caption

Заголовок. Текст, який написаний на командній кнопці.

Font

Шрифт. Встановлює вигляд, розмір, і тип для шрифту тексту заголовка.

Left

Зліва. Встановлює відстань від лівої сторони форми до лівої сторони командної кнопки.

Top

Зверху. Встановлює відстань від верхньої сторони форми до верхньої сторони командної кнопки.

Width

Ширина командної кнопки в твипах.

Height

Висота командної кнопки в твипах.

Enabled

Вирішувати. Визначає, чи може кнопка реагувати на події (у режимі виконання).

Visible

Видимість. Визначає, чи будемо ми бачити командну кнопку на формі (у режимі виконання).

 

Об’єкт Label призначений для створення текстових полів (написів, текстів) у вікні програми. Окрім аналогічних до на­ведених у попередній таблиці властивостей Width, Height, Font, BackColor, Name, Caption, Enabled, Left, Top, він володіє ще й такими:

Властивість

Опис властивості

Приклади значень

Alignment

Вирівнювання тексту в межах поля

Center, LeftJustify, RightJustify

AutoSize

Приведення меж поля до границь тексту

True, False

Visible

Видимість об’єкта

True, False

Wordwrap

Перенесення слів тексту у новий рядок

True, False

ForeColor

Колір тексту

&Н0000С0С0&

 

Об’єкт Image призначений для вставки графічних об’єктів з файлів типу *.bmp, *.emf, *.ico, *.wmf у форму. Окрім відомих властивостей Width, Height, Name, Enabled, Left, Top, Visible, використовують такі:

Властивість

Опис властивості

Приклади значень

Center

Вирівнювання малюн­ка до центру відносно поля, що його містить

True, False

Picture

Ім’я графічного файлу

Задається у діалоговому вікні

Stretch

Приведення розміру зображення до зада­них розмірів об’єкта

True, False

 

Об’єкт CommandButton використовують для створення кно­пок на формі. Кнопки мають такі властивості: Visible, Width, Height, Font, BackColor, Name, Caption, Enabled, Left, Top та інші.

 

Об’єкти типу TextBox використовують для введення рядка символів з клавіатури. Окрім відомих уже власти­востей, поля редагування TextBox володіють такими:

Властивість

Опис властивості

Приклади значень

PasswordChar

Символ для введення пароля

Порожній рядок (пряме відображення тексту), * (текст відображатиме­ться зірочками)

ToolTipText

Текст підказки, яка висвітлюється, якщо навести курсор миші

«Введіть суму» (довіль­ний рядок символів)

Text

Текст у полі редагу­вання

«0,0001» (довільний рядок символів)

 

Об’єкти типу OptionButton призначені для створення у формі засобу для вибирання однієї альтернативної можливості серед де­кількох. Розглянемо такі властивості перемикачів:

Властивість

Опис властивості

Приклади значень

Value

Стан перемикача

True (вибраний), False (не вибраний)

Tablndex

Порядок вибору об’єкта клавішею Tab

0 (перший), 4 (п’ятий)

TabStop

Доступ до даного об’єкта табулятором

True (буде доступним), False (не буде)

 

Об’єкт ComboBox призначений для введення даних та вибору їх зі списку.

Властивість

Опис властивості

Приклади значень

Style

Тип заповнення

Dropdown Combo (вводити дані або обирати), Simple Combo (вводити) , Dropdown List (обирати зі списку)

Tablndex

Порядок вибору об’єкта клавішею Tab

0 (перший), 4 (п’ятий)

TabStop

Доступ до даного об’єкта табулятором

True (буде доступним), False (не буде)

 

 

 

 

Компонент Slider («повзунок») додається на панель інструментів таким чином:

—          права кнопка миші на панелі

—          Components — Microsoft Windows Common Controls – 6

Властивість

Опис властивості

Приклади значень

Min

Max

максимальне значення «повзунка»

мінімальне значення «повзунка»

числове значення (наприклад, 5, 155)

Value

задає біжуче положення «повзунка»

числове значення (2, 50)

SmallChange

найменша зміна (стрілки вгору, вниз, вліво, вправо)

1

LargeChange

великі зміни (PageUp, PageDown)

7

TickFrequency

частота засічок

7

 

Об’єкти типу ChackBox призначені для вибору одного або декількох пунктів, властивостей. Розглянемо такі властивості об’єктів типу CheckBox:

Властивість

Опис властивості

Приклади значень

Value

Стан перемикача

1 (вибраний), 0 (не вибраний)

Caption

текст, що знаходиться біля перемикача

0 (перший), 4 (п’ятий)

 

Керуючі елементи Hscroll та VScroll (вертикальна та горизонтальна полоси прокрутки) використовуються для автоматизації введення даних в прграму, а також для наочного представлення даних:

 

Властивість

Опис властивості

Приклади значень

Min

Мінімальне значення полоси

Цілі числа не менші -32768

Max

Максимальне значення полоси

Не більше 32767

Value

Поточне значення повзунка

Змінюється при зміні полоси

SmallChange

Крок зміни value при натисканні стрілок à, ß, вгору, вниз

Числове значення (1, 5, 10)

 

LargeChange

Крок зміни value при натисканні вільної частини полоси або PageUp, PageDown

 

Числове значення (5, 10, 100)

 

 

 

Практична робота №1

Практична робота 1. Програмування кнопок. Об’єкти: форма, текстове поле, зображення, кнопка

Хід роботи

  1. 1. Завантажте середовище візуального програмування Visual Basic.
  • Запуск Visual Basic виконують клацанням на піктограмі Microsoft Visual Basic або за допомогою каскадного меню Start (Пуск) => Programs (Програми) => Microsoft Visual Studio 6.0 => Microsoft Visual Basic 6.0. У вікні New Project виберемо Standard EXE => Відкрити.

Зауваження. Якщо на екрані немає вікна форми чи палітри компонентів, то їх можна відкрити за допомогою команд голов­ного меню View => Object та View => Toolbox відповідно.

 

  1. 2. 3апустіть програму Project1 на виконання і розгляньте вікно порожньої поки що форми.

Запустити програму можна декількома способами:

  • Виконати команду Run => Start головного меню;
  • Клацнути на кнопці Start В панелі інструментів;
  • Натиснути на функціональну клавішу F5.

Виконайте такі дії: максимізуйте вікно, відновіть його поперед­ній розмір, мінімізуйте та знову розгорніть вікно, пересуньте на робочому столі та змініть його розміри, викличте системне меню (Alt + пропуск). Виконайте ті ж дії за допомогою команд Move, Size та інших і клавіатури.

Висновок: вікно форми володіє усіма властивостями стандарт­ного вікна операційної системи Windows.

  1. 3. Збережіть створену програму у своїй папці. Перед цим створіть у власній папці папку PR_VB1

Для цього виберіть команду головного меню File =>Save Project as (Зберегти Проект) або натисніть на кнопку Save Project на панелі інструментів. У першому рядку вікна, яке з’явиться («Save File As») під заголовком «Save in:» (Папка:), за допомогою випадаючого меню виберіть свою папку. Задайте назву для файлу форми, попередньо стерши запропоновану комп’ютером назву Form1 => Save. У наступному вікні «Save Project As» дайте назву файлові проекту, стерши запропоновану комп’ютером назву Project 1 => Save.

 

  1. 4. Візуально ознайомтеся з властивостями форми Width та Height. Змініть за допомогою миші розміри форми. Переконайтесь, що зміна розмірів форми веде до зміни її властивостей Width та Height (ширини і висоти форми) у вікні властивостей Properties — Form 1.

Зауваження. Переглядати чи змінювати значення властиво­стей об’єктів зручно на закладці Categorized вікна Properties, де вони згруповані за своїм призначенням. На закладці Alphabetic цього вікна властивості об’єктів впорядковані за алфавітом за винятком Name — імені об’єкта.

 

  1. 5. Дослідіть, як зміна значень властивостей Width чи Height фор­ми у вікні Properties веде до зміни розміру форми. Введіть відповідне значення у твіпах (одиниця виміру) і натисніть на клавішу Enter.

 

6. Змініть колір фону форми. Для цього у вікні властивостей форми у рядку BackColor за допо­могою випадаючого меню задайте значення кольору фону од­ним із способів:

  • на закладці System виберіть один із системних кольорів;
  • на закладці Palette безпосередньо виберіть колір фону.

7. Виконайте програму ще раз (див. пункт 3).

8. Вставте у форму текстове поле (обєкт типу Label) з текстом «Анкета учня«.


Два рази клацніть мишею на піктограмі Label палітри компонентів. Розташуйте вставлений об’єкт, наприклад, так, як показано на рис.1, перетягуючи його мишею. Якщо об’єкт Label1 невиокремлений, активізуйте його і у вікні Properties змініть значення властивості Caption з Label1 на текст «Анкета учня» без лапок. Задайте значення властивості AutoSize цього об’єкта як True. Змініть значення властивості Font (шрифт) цього поля на такі:

FontTimes New Roman;

Font style: — Bold;

Size14;

ForeColorколір підпису.

Зауваження. У вікні Properties відображається список Властивостей лише активного на даний момент об’єкта.

 

9. Аналогічно вставте у форму ще декілька текстових полів з вашими біографічними даними.

Один із варіантів розташування текстових полів показаний на рис.2.

 

10. Вставте у форму обєкт типу Image (зображення).

Для цього клацніть один раз лівою клавішею миші на піктограмі Image палітри компонентів і, наприклад, у нижньому правому куті форми обведіть контур для майбутнього_зображення (фото­графії). Запа­м’ятайте назву, яку Visual Basic присвоїть цьому об’єкту (значення властивості Name) або замініть її на свій розсуд. За за­мовчуванням цей об’єкт матиме стандартну назву Image1.

11. Вставте фотографію за допомогою властивості Picture (ілюстрація) обєкта Image1.

Для цього спочатку виокремте цей об’єкт і задайте значення True його властивості Stretch. Активізуйте рядок Picture у вікні Properties. Клацнувши на кнопці В, викличте діалогове вікно вибору малюнка Load picture, де зазначте шлях до файлу з фото­графією. Якщо такого файлу немає, скористайтесь будь-яким ма­люнком з бібліотеки Microsoft Clipart, яка за замовчуванням зна­ходиться у папці С:\ Program Files \ Microsoft Office \ Clipart \ Popular. Виберіть будь-який файл => Open.

 

12. Вставте ще одну фотографію у форму поверх існуючої, скориставшись ще одним обєктом типу Image. Один із варіантів розташування фотографії показаний на рис. 5. Вважатимемо, що цей об’єкт має назву Image2.

Зауваження. Під час накладання об’єктів може виникнути потреба використати команди Send To Back (переслати назад) чи Bring To Front (перенести наперед), які є в їхніх контекстових меню.

13. Поекспериментуйте з властивістю Visible (видимість) обох зо­бражень, кожного разу виконуючи програму (див. пункт 2). Встановіть значення властивості Visible — False для обох зображень.

14. Вставте у форму кнопки для засвічування фотографій два обєкти типу CommandButton з назвами Command1 і Command2. Піктограма II об’єкта типу CommandButton (кнопка) знаходиться на палітрі компонентів Visual Basic. Поміняйте підписи на кнопках (змініть властивість Caption) на «Портретна фотографія» та «Худож­ня фотографія» відповідно. Виберіть найкращий, на ваш розсуд, кирилізований шрифт для підписів. Якщо використано картинки із стандартної бібліотеки Clipart, виберіть для кнопок цікаві підписи. Один із варіантів розташування кнопок показано на рис. 3.

 

 

15. 3апрограмуйте кнопку «Портретна фотографія» так, щоб після її натискання у формі зявлялась портретна фотографія.

Для програмування кнопки Command1 необхідно два рази клац­нути на ній лівою клавішею миші. В результаті активізується вікно тексту програми з заготовкою процедури Command1_Click, яка опрацьовуватиме подію клацання на кнопці Command1:

 

Private Sub Command1_Click()

End Sub

 

У заготовку необхідно вставити текст програми реакції на цю подію. Процедура матиме такий вигляд:

Private Sub Command1_Click()

Imagel. Visible = True Портретна фотографія стає видимою

Image2. Visible = False Художня фотографія стає невидимою

End Sub

За допомогою даної процедури властивість видимості об’єкта Image1 вмикаємо, і цю ж властивість об’єкта Image2 вимикаємо. Для кнопки «Художня фотографія» дії будуть протилежні. Звер­ніть увагу на використання складених імен типу Image1.Visible, в яких назва об’єкта від його властивості відокремлюється крапкою. Такі складені імена дають доступ до значення конкрет­ної властивості об’єкта.

 

16. Запрограмуйте кнопку «Художня фотографія» відповідно до її призначення (див. пункт 15). Текст процедури для цієї кнопки матиме вигляд:

 

Private Sub Command2_Click()

Imagel.Visible = False Портретна фотографія стає невидимою

Image2. Visible = TrueХудожня фотографія стає видимою

End Sub

 

Щоб створити таку процедуру швидко, можна скопіювати дві команди присвоєння з попередньої процедури у нову і поміняти вирази справа.

 

17. Запустіть програму і переконайтеся, що кнопки виконують свої функції. Закрийте вікно програми «Анкета учня«.

18. Збережіть створену програму у своїй папці. Виберіть елемент головного меню File => Save Project або натис­ніть кнопку Save Project Я на панелі інструментів.

 

19. Створіть exe-файл програми. Виконайте команду головного меню File => Make <ім’я проекту.ехе>. У вікні, що відкриється, вкажіть особисту папку та ім’я exe-файлу => Ok.

 

20. Продемонструйте створену форму викладачеві.