Студопедия
rus | ua | other

Home Random lecture






Організація циклу


Date: 2015-10-07; view: 349.


End Sub

Робота з підпрограмами

Створення програмного коду

8. У вікні редактора коду в розділі General Declarations оголосимо змінні:

 

Dim x As Double

Dim y As Double

Dim xn As Double

Dim xk As Double

Dim dx As Double

Dim i As Integer

Dim NewLine As String

Dim STab As String

 

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

 

Sub<Ім'я підпрограми>()

 

 

Тут ключові словаSub – початок підпрограми, End Sub – кінець підпрограми. Між ними записується тіло підпрограми.

Викликати підпрограму з тіла основної програми можна за допомогою ключового слова Call. Після нього вказати ім'я підпрограми:

Call<Ім'я підпрограми>

9. Створимо підпрограму для зчитування вихідних даних з текстових полів:

 

' Підпрограма введення початкових значень

Sub Coordinats()

xn = TextLeft.Text

xk = TextRight.Text

dx = TextStep.Text

End Sub

 

10. Створимо підпрограму для обчислення функції : y=sin(x):

 

' Підпрограма обчислення функції

Sub Tabuls()

y = Sin(x)

End Sub

 

В тому випадку, коли необхідно виконати певну послідовність операцій багатократну кількість разів, використовують цикли. Одним з них є цикл зі структурою For…Next. Цикл For…Next використовується в тому випадку, коли кількість повторень заданого блоку операторів відомо завчасно. Структура написання:

 

For лічильник = п.з. To к.з. Step крок

 

Next лічильник

 

To –ключове слово, що вказує на кінцеве значення змінної;

Step–ключове слово, що вказує на крок;

лічильник – змінна, якої присвоюються значення від початкового до кінцевого з кроком крок під час виконання циклу;

п.з. –початкове значення змінної;

к.з. –кінцеве значення змінної.

 

11. Створимо процедуру, яка дозволяє організовувати обчислення заданої функції для значень x з кроком dx в межах від xn до xk, а потім значення x і y виводити в текстове поле TextFun:

 

Private Sub mnuTab_Click()

NewLine = Chr(13) + Chr(10) ' Enter

STab = Chr(9) ' Tab

TextFun.Text = "X" + STab + "Y" + NewLine 'Шапка таблиці

Call Coordinats ' Виклик підпрограми введення початкових значень

For x = xn To xk Step dx

Call Tabuls ' Виклик підпрограми обчислення функції

TextFun.Text = TextFun.Text + Str(Format(x, "0.00")) + STab + _
Str(Format(y, "0.0000")) + NewLine

Next x

End Sub

 

12. Створимо процедуру, яка дозволяє визначати масштаб побудови графіку, організовувати обчислення заданої функції для значень x з кроком dx в межах від xn до xk, а потім здійснювати побудову графіку функції в графічному полі:

 

Private Sub mnuGraph_Click()

'Побудова вісі X і Y

CoordY = PictureGraph.Height / 2

CoordX = PictureGraph.Width / 2

PictureGraph.Line (0, CoordY)-(PictureGraph.Width, CoordY)

PictureGraph.Line (CoordX, 0)-(CoordX, PictureGraph.Height)

Call Coordinats 'Виклик підпрограми введення початкових значень

' Визначення масштабу

If Abs(xn) > Abs(xk) Then

sclx = 0.5 * PictureGraph.Width / Abs(xn)

Else: sclx = 0.5 * PictureGraph.Width / Abs(xk)

End If

scly = 0.4 * PictureGraph.Width

' Побудова графіку

For x = xn To xk Step dx

Call Tabuls ' Виклик підпрограми обчислення функції

If x = xn Then xpred = x: ypred = y

PictureGraph.Line ((xpred * sclx + CoordX), (-ypred * scly + CoordY)) _

-((x * sclx + CoordX), (-y * scly + CoordY))

xpred = x

ypred = y

Next x

End Sub

 

13. Створимо процедуру для очищення текстового поля з результатом і графічного поля:

 

Private Sub mnuClear_Click()

TextFun.Text = Empty ' Очищення текстового поля

PictureGraph.Cls ' Очищення графічного поля

End Sub

 

14. Збережіть проект і перевірте як він працює.


<== previous lecture | next lecture ==>
Дизайн проекту | Робота з елементом CommonDialog
lektsiopedia.org - 2013 год. | Page generation: 1.406 s.