Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
RGR2_Malovichko1.doc
Скачиваний:
3
Добавлен:
01.12.2018
Размер:
198.14 Кб
Скачать

1. Створення Панелі користувача і кнопок макросів

Налагодження середовища VBA виконується аналогічно діям, що виконані в РГР №3, при цьому мають місце кнопки з макросами для ітераційної циклічної структури і циклу за індексом.

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

Рис. 1.1. Панель інструментів користувача із кнопками для виклику програм 1.Ітераційної циклічної структури; 2.Циклу за індексом

2. Розробка алгоритму та програми табуляції функції однієї змінної з використанням ітераційного циклу при розрахунку значень заданої функції

2.1 Постановка задачі

Розробити алгоритм та програму розрахунку значень функції у згідно з формулами:

bx<1 bx=1 bx>1

b=1,5

2.2 Блок-схема алгоритму

Блок-схему наведено на рис. 2.1.

2.3. Таблиця ідентифікаторів

Змінна алгоритму

Q

x

b

x0

xn

Δx

Ідентифікатор

q

x

b

x0

xi

dx

Тип

Single

2.4 Текст програми

Sub iter_cykl()

Dim q As Single, b As Single, x As Single

Dim x0 As Single, xi As Single, dx As Single

MsgBox ("Ітераційний цикл")

'Уведення вхідних даних

b = InputBox("Введіть b")

x0 = InputBox("Введіть x0")

xi = InputBox("Введіть xi")

dx = InputBox("Введіть dx")

x = x0

While x <= xi

If b*x < 1 Then

If b*x<=0 then

MsgBox(“Q не визначено”):Go To 1:

Else

Q=b*x-Log(b*x)/Log(10)

End if

Else

If b*x > 1 Then

Q=b*x+ Log(b*x)/Log(10)

Else

Q=1

End If

End If

MsgBox ("Q = " + Str(q) + "; x = " + Str(x))

x = x + dx

Wend

1:

End Sub

2.5 Контрольний приклад тестування програми

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

За допомогою калькулятора обчислюю значення qт при x = 0.3. та х=1, х=2

При bx<1: b=1,5, x= 1/1,5 = 1/b = 1/1,5 = 0.667

При bx>1, b=1,5, x=1:

При bx=1, b=1,5, x=1:

табл. 2.1.

Таблиця 2.1

x

qт

qпр

Δq,%

0.1

0.973909

0.973909

0

0.2

0.822879

0.822879

0

0.3

0.796787

0.796787

0

0.4

0.821849

0.821849

0

0.5

0,874939

0,874939

0

0.6

0.945757

0.945757

0

0.7

1.071189

1.071189

0

0.8

1.279181

1.279181

0

0.9

1.480334

1.480334

0

1

1,676091

1,676091

0

Висновок. Отже, так як похибка не перевищує 0,05%, то програма ітераційної структури працює коректно.

3. Розробка алгоритму та програми визначення суми членів ряду з використанням циклічної структури з заданим числом повторень

3.1 Постановка задачі

Розробити алгоритм та програму розрахунку значень функції s згідно з формулами:

1,5

6

Виконати тестування для перевірки правильності функціонування програми для значень n=6, x=1,5.

3.2 Блок-схема алгоритму

Блок-схема алгоритму зображена на рис 3.1

3.3. Таблиця ідентифікаторів

Змінна алгоритму

n

i

s

x

Ідентифікатор

n

i

s

x

Тип

integer

single

3.4 Текст програми

Sub_cykl_index()

Dim S as Single, x as Single

Dim i as integer, n as integer

MsgBox(“Цикл по індексу“)

x=InputBox (“x=”)

n=InputBox(“Введіть кількість членів ряду”)

S=1/x

For i=1 to n-1

S=S+((-1)^i)*1/((2*i+1)*(x^(2*i+1)))

Next i

MsgBox(“сума ”+str(n)+” членів ряду = ”+str(s))

End Sub

3.5 Контрольний приклад тестування програми

3.5.1. Виконуємо обрахунки за допомогою Ms Excel шести членів ряду при значенні x=1.5.

Сума шести членів ряду рівна S=1/1,5-1/3*1,53+1/5*1,55+1/7*1,57+1/9*1,59+1/11*1,511= 0,587716842

3.5.2. Виконуємо обрахунки за допомогою програми. Сума шести членів ряда рівна 0,587716842.рис.3.1. hh

3.5.3. Обчислюю похибку між результатом роботи програми і тестовим прикладом за формулою:

3.5.4.Висновок.

Отже, так як похибка програми між результатом роботи програми і тестового прикладу не перевищує 0,05%, то програма циклу за індексом працює коректно.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]