Dim xn As Single, xk As Single, x As Single, y As Single, n As _ Integer, h As Single, st As String

ЛАБОРАТОРНА РОБОТА № 1

 

ПРОГРАМУВАННЯ ЦИКЛІЧНИХ ОБЧИСЛЮВАЛЬНИХ ПРОЦЕСІВ

 

Мета роботи

 

Навчитися використовувати оператори циклу For – Next ,оператори циклу с передумовою та післяумовою Do – Loop , For – Each , умови While та Until для реалізації арифметичних та ітераційних циклічних обчислювальних алгоритмів.

 

1.2 Загальні теоретичні відомості

 

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

Розрізняють два види циклів:

· арифметичний – число повторень якого можна апріорі визначити.

Синтаксис оператора:

For лічильник = початкове значення To кінцеве значення Step крок зміни

[Оператори – тіло циклу]

Next лічильник .

Оператор повторює виконання тіла циклу, змінюючи значення змінної лічильника від початкового значення до кінцевого значення із заданим кроком зміни. Кількість повторень підраховується за формулою:

n = + 1;

· ітераційний – цикл із невідомим числом повторень.

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

 

або .

Синтаксис операторів з післяумовою:

 

або .

 

Причому, While – забезпечує багатократне виконання тіла циклу доти, поки умова виконується, Until – забезпечує багатократне виконання тіла циклу доти, поки умова не виконується.

Додатково є оператор циклу по сімейству об’єктів.

Синтаксис оператора:

For Each змінна in сімейство

[Оператори – тіло циклу]

Next змінна .

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

Задачі, у розв’язку яких використовують арифметичний цикл – це табулювання функції на заданому проміжку із заданим кроком.

Задачі ітераційного циклу – це задачі на визначення наближеного значення функції з заданою точністю та підрахунки за рекурентними формулами.

В мові VBA є також декілька спеціальних операторів для організації таких циклів.

 

 

1.3 Приклади розв’язання завдання та програмування циклічних обчислювальних процесів

Розглянемо типові алгоритми циклічних процесів.

 

Приклад 1.3.1 Обчислити значення функції ,

де , n=10 кількість розподілу інтервалу.

Дані розмістити у вигляді таблиці.

Для наданої задачі розглянемо три способи рішення.

Спосіб 1

Початкові значення х введемо за допомогою вбудованого вікна вводу InputBox , а результати підрахунків виведемо у діалогове вікно виводу MsgBox . Додамо про проекту модуль за ім’ям “Приклад1_1”.

Запишемо код цього модуля у відповідному вікні.

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

 

Sub tab1()

Dim xn As Single, xk As Single, x As Single, y As Single, n As _ Integer, h As Single, st As String

st = “”' розраховану таблицю значень оформлюємо за допомогою рядкової змінної st

xn = InputBox("Ввести початкове х=")

xk = InputBox("Ввести кінцеве х=")

n = InputBox("Ввести кількість розподілу інтервалу n=")

h = (xk - xn) / n

For x = xn To xk Step h

y = (Sin(x) - 2.7) / (Abs(x) + Sqr(x ^ 4 + 1))

st = st & "x=" & x & vbTab & "y=" & y & vbCrLf

Next x

MsgBox st , , “Результати розрахунків”

End Sub

 

Результати роботи програми наведені на рис. 1.1 :

 

 

Рисунок 1.1 – Результати роботи програми

Спосіб 2

Для відображення початкових значень х та розрахункових значень y використовуємо “Лист1” EXCEL , як показано на рис. 1.2.

Результати обчислень виведемо починаючи з клітин А5 , В5 .

Розмістимо на цьому ж листі CommandButton1 , для якої змінимо властивості: Caption – «Табулювання» ; Font – «жирный» , 14.

 

 

Рисунок 1.2 – Інтерфейс “Лист1”

 

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