Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
A.P._Lutay_A.P._Informatika_ta_komp'yuterna_teh....doc
Скачиваний:
12
Добавлен:
29.04.2019
Размер:
3.28 Mб
Скачать

19.2 Оператор циклу Do While . . . Loop

Цикл цього типу використовується в тих випадках, коли необхідно повторювати ділянку коду доти, поки виконується деяка умова.

Загальна форма оператора:

Do While <Умова>

<Блок_операторів>

Loop

Процес виконання оператора Do While . . . Loop такий:

  1. Перевіряється на істинність деяка логічна умова.

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

При використанні циклу Do While . . . Loop потрібно, на відміну від оператора For...Next, усередині циклу змінювати значення змінної - лічильника циклу.

У програмі визначення суми на рахунку після декількох років при певному банківському відсотку може бути використаний замість оператора For...Next оператор Do While . . . Loop. У цьому випадку алгоритм виконання програми не зміниться. Процедура cmdSolve _Click() прийме такий вид:

Private Sub cmdSolve _Click()

SPV = Val(txtSPV.Text)

V = Val(txtV.Text)

P = Val(txtP.Text)

SR = SPV

i = 1

Do While i<= P

SR = SR*(100+V)/100

i = i+1

Loop

lblSR.Caption = Str(SR)

End Sub

19.3 Оператор циклу Do. . . Loop While

У циклі цього типу оператори, що входять у тіло циклу виконуються обов’язково хоча б один раз, після цього відбувається перевірка умови і, якщо умова не істинна, керування передається наступному після рядка Loop оператору - цикл завершується. При істинності умови, починається наступна ітерація циклу.

Загальна форма оператора:

Do

Блок_операторів

Loop While Умова

Якщо спробувати вирішити задачу визначення суми ряду чисел із використанням оператора Do. . . Loop While, алгоритм виконання програми зміниться (рис.19.3.1).

Р исунок 19.3.1 - Блок-схема розв’язання задачі обчислення суми на рахунку з використанням оператора Do ... Loop While

Процедура cmdSolve _Click() прийме такий вид:

Private Sub cmdSolve_Click()

SPV = Val(txtSPV.Text)

V = Val(txtV.Text)

P = Val(txtP.Text)

SR = SPV

i = 1

Do

SR = SR*(100+V)/100

i = i+1

Loop While i<= P

lblSR.Caption = Str(SR)

End Sub

У розглянутих раніше прикладах використовувалися прості перемінні, котрі вводилися в текстові вікна. У наступному прикладі розглянемо арифметичний цикл з індексованими перемінними, тобто роботу з масивом.

Приклад 1: Написати програму обчислення суми товарообігу підприємства за місяць, якщо відомий щоденний товарообіг по формулі

де: n – кількість днів у місяці,

xi – щоденний товарообіг,

i – поточний день місяця.

Ф орма проекту представлена на малюнку:

Виконання:

У даному прикладі з'явився новий запис - xi, що називається индек-сированной перемінної і використовується при роботі з масивами. Для занесення таких даних можна використовувати засобу убудованого діалогу – панель уведення. Панель уведення викликається функцією InputBox. Спрощений формат функції:

< перемінна > = InputBox (“текст запрошення, видаваного користувачу“)

Операції по виконанню приклада - «Цикл із запитом»

Операція

Виконання

1

Створення електроной форми і завдання властивос-тей її елементів

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

2

Завдання функції кнопки Вихід

Установити об'єкт Vixod і для події Click записати:

Private Sub Viхоd_Click()

End

End Sub

3

Завдання функцій кнопки Очищення

Установити об'єкт Och (властивість Name має ім'я Och ) і для події Click записати:

Private Sub Och_Click()

n.Text = “ “

y.Text = “ “

End Sub

5

Обчислення суми товарообігу.

Установити об'єкт Rachet і для події Click записати:

Private Sub Rachet_Click()

Dim i As Integer, p As Single

’ оголошення параметра циклу i як цілого

’ оголошення вводимих слагаемих p у формі з плавающей комой

For і = 1 To n

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

y.Text = Val(y.Text) + p

Next i

End Sub

5

Зберегти проект з ім'ям «Цикл із запитом»

Меню File  команда Save Project  задати ім'я файлу і папку.

6

Налагодити програму

Меню Run  команда Start, увести кількість днів – 2, клацнути по кнопці Розрахунок, ввести у вікно запиту дані контрольного приклада X1 = 5, X2 = 7, повинний вийти відповідь у = 12.

7

Налагоджену програму зберегти

Меню File  команда Save Project.

Приклад 2.

Підприємство в першому півріччі робило N видів продукції з виторгом від реалізації VNi, а в другому півріччіM видів з VMi.

  1. В изначити прибуток від реалізації продукції підприємства за перше півріччя:

  2. В изначити прибуток від реалізації продукції підприємства за друге півріччя:

  1. Визначити виторг від реалізації продукції підприємства за рік:

З берегти форму і проект на робочому столі з ім'ям – «Виторг»

Програмний код

Private Sub cmdClear_Click()

n.Text = ""

m.Text = ""

v1.Text = ""

v2.Text = ""

vr.Text = ""

End Sub

Private Sub cmdRachet_Click()

Dim і As Integer, p As Single, d As Single

For і = 1 To n

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

v1.Text = Val(v1.Text) + p

Next i

For i = 1 To m

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

v2.Text = Val(v2.Text) + d

Next I

vr = Val(v1.Text) + Val(v2.Text)

End Sub

Private Sub cmdExit_Click()

End

End Sub