asyan.org
добавить свой файл
1
Лабораторна робота № 16

Тема: Створення програмного коду для введення даних.

Мета: сформувати навички по програмній реалізації масивів.
Короткі теоретичні відомості

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

Кількість різних індексів визначає розмірність масиву. Бувають масиви одновимірні (вектори), двовимірні (матриці), тривимірні і т. д.

Кількість різних значень індексу визначає кількість елементів К в масиві.

Описування одновимірного масиву здійснюється оператором Dim такими способами:

Dim Ім'я_змінної(Nmax) []

Dim Ім'я_змінної(Nmin То Nmax) []

Доступ до елемента масиву здійснюється за допомогою імені масив й індексу.

Статичні масиви – границі установлюють на етапі розробки і можуть змінюватись тільки в новій версії програми.

Динамічні масиви – змінюють границі в ході виконання програми.

Для оголошення статичного масиву використовується оператор Dim: Dim arr(10) As long

Для того, щоб задати індексацію масиву використовують оператор Option Base.

Щоб оголосити динамічний масив спочатку масив виконують в секції (general/ Declaration) контейнер (форми модуля без вказування розміру: Dim Array () As Variant

Потім за допомогою оператора ReDim встановлюють фактичний розмір масиву:

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

У VB існує можливість визначення значень нижньої та верхньої меж масиву, для чого використовуються функції Lbound і Ubound відповідно.

Для опрацювання масивів часто застосовується цикл For...Next, в якому в якості лічильника використовується цілочисельна.
Завдання для практичного виконання:

Таблиця 1. Властивості форми frmArrNum і елементів керування

Тип об’єкту

Властивість

Значення

VB.TextBox

(Name)

txtNum

Index

0

Text

 

VB.CommandButton

(Name)

cmdFind

Caption

Перший нульовий

VB.CommandButton

(Name)

cmdRND

Caption

Заповнити

Завдання 1. Створення додатку для знаходження першого нульового значення у масиві чисел.

1.     Запустіть програму VB6. Створіть новий проект ArrNum з формою frmArrNum.

2.     Задайте значення властивості Caption форми: Масив чисел.

3.    Збережіть файли проекту в каталозі, вказаному викладачем.

4.     Відкрийте вікно дизайнера форми frmArrNum.

5.     Використовуючи таблицю 1, розмістіть на формі елементи керування.

6.     Збережіть зміни модуля форми.

7.     Відкрийте вікно коду форми frmArrNum.

8. Оголосіть константу: Const N As Byte = 7

9.       У процедуру обробки події Load форми введіть оператори для створення масиву текстових полів:

Private Sub Form_Load()

    Dim i As Byte

    For i = 1 To N

        Load txtNum(i)

        txtNum(i).Top = txtNum(i - 1).Top + txtNum(i - 1).Height + 120

        txtNum(i).Visible = True

    Next i

    Call cmdRND_Click

End Sub
10. Збережіть зміни проекту.

11.   Створіть процедуру обробки події Click кнопки Заповнити для заповнення текстових вікон випадковими числами:

Private Sub cmdRND_Click()

    Dim i As Byte

    For i = 0 To N

        txtNum(i).Text = CInt(Rnd * 10 - 5)

    Next i

End Sub
12. Створіть процедуру обробки події Click кнопки Перший нульовий для пошуку першого нульового числа:

Private Sub cmdFind_Click()

    Dim i As Byte

    i = 0

    Do

        If txtNum(i).Text = "0" Then

            txtNum(i).SetFocus

    Exit Sub

        End If

    i = i + 1

    Loop Until i > N

    MsgBox "У масиві нульові елементи відсутні"

End Sub

13. Для відображення результатів пошуку створіть процедуру, яка буде виділяти шуканий результат.

Private Sub txtNum_GotFocus(Index As Integer)

    txtNum(Index).SelStart = 0

    txtNum(Index).SelLength = Len(txtNum(Index).Text)

End Sub
14. Запустіть додаток на виконання, протестуйте роботу програми.

15. Зупиніть роботу додатку.
Контрольні запитання:

  1. Що таке масив?

  2. Яка різниця між одновимірним та двовимірним масивами?

  3. Як визначається кількість елементів в масиві?

  4. Як описується масив?

  5. Як здійснюється доступ до елементів масиву?

  6. За допомогою якої керуючої структури переглядаються елементи масиву?