Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
конспект_лек_Ииформатика.doc
Скачиваний:
7
Добавлен:
01.07.2025
Размер:
6 Мб
Скачать
☆

2. Организация циклических вычислительных процессов. Оператор цикла For. . . Next.

Циклическими являются алгоритмические процессы, которые позволяют повторять часть программы несколько раз. Каждое повторение операторов внутри цикла называют итерацией. Количество повторений (итераций) может быть известной заранее или зависеть от истинности некоторого логического условия.

Оператор цикла For. . . Next используется тогда, когда нужно выполнить группу операторов заранее известное число раз.

Общая форма оператора:

For I = Start to Finish Step N

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

Next

Процесс выполнения оператора For. . . Next такой:

a. Переменной I присваивается значение переменной или выражения Start.

b. Значение I сравнивается со значением переменной или выражением Finish.

c. Если I <= Finish, выполняется блок операторов в теле цикла - очередная итерация (повторение). Затем переменная I (счетчик цикла) увеличивается на N, выполняется переход к п. B. Если I > Finish, цикл завершает свою работу.

Часть начальной строки цикла Step N может быть пропущена, когда шаг изменения переменной цикла равен единице.

Пример использования цикла For ... Next

  В качестве примера рассматривается создание программы вычисления суммы на счете в банке. Пользователь должен ввести следующие данные: сумму предыдущего взноса на счет - SPV, банковский процент - V, период времени - P. После нажатия кнопки Расчет, программа должна вывести сумму SR, которая будет на счету после P лет при определенном банковском проценте, если известна сумма первоначального взноса. Формула расчета суммы такова:

1. До начала работы программы SR = SPV.

2. Ежегодно сумма на счете изменяется таким образом .

Блок-схем решения задачи представлена на рис. 2.4.

На этапе визуального программирования нужно создать форму, представленную на рис. 2.5.

Р исунок 2.4 - Блок-схема решения задачи «Расчет суммы на счете»

Рисунок 2.5 – Окно программы-примера виспользования оператора For...Next

Характеристика форми, елементів управління форми подана в таблиці.

Объект

Свойство

Значение

1

2

3

Форма (Form)

Name

frmExampleFor

Caption

Программа-пример цикла For

BackColor

белый

Командная кнопка (Command Button)

Name

cmdSolve

Caption

&Расчет

Командная кнопка (Command Button)

Name

cmdClear

Caption

&Очистка

Командная кнопка (Command Button)

Name

cmdExit

Caption

&Выход

Этикетка (Label)

Name

lblSPV

Caption

Сумма первоначального взноса:

BackColor

белый

Font

12 пунктов, полужирный

Этикетка (Label)

Name

lblV

Caption

Банковский процент:

BackColor

белый

Font

12 пунктов, полужирный

Этикетка (Label)

Name

lblP

Caption

Период:

BackColor

белый

Font

12 пунктов, полужирный

Этикетка (Label)

Name

lblS

Caption

Сумма на счете:

BackColor

белый

Font

12 пунктов, полужирный

Этикетка (Label)

Name

lblSR

Caption

0

BackColor

белый

Font

12 пунктов, полужирный

Alignment

1 – Right Justify (по правому краю)

Текстовое поле

(TextBox)

Name

TxtSPV

Text

“” (пустая строка)

Текстовое поле

(TextBox)

Name

TxtV

Text

“” (пустая строка)

Текстовое поле

(TextBox)

Name

TxtP

Text

“” (пустая строка)

Характеристика кода программы представлена в таблице:

Данные в строке кода

Комментарий

Option Explicit

Объявление переменных:

Dim SPV, V, P, SR

SPV – сумма первоначального взноса; V – банковский процент; P – период; SR – сумма на счету после P лет.

Private Sub cmdClear_Click()

Заголовок процедуры, яка выполняется в случае события Click – щелчка кнопкой мыши на кнопке cmdClear (Очистка)

TxtSPV.Text = " "

Свойству Text текстового поля txtSPV (для вывода результата - числа У) присваивается значение “└┘“ (пустая строка).

TxtV.Text = " "

Свойству Text текстового поля txtV (для вывода результата - числа У) присваивается значение “└┘“ (пустая строка).

TxtP.Text = " "

Свойству Text текстового поля txtP (для вывода результата - числа У) присваивается значение “└┘“ (пустая строка).

lblSR.Caption = 0

Свойству Caption этикетки lblSR (для вывода результата – сумма к выплате) присваивается значения 0.

End Sub

Конец процедуры cmdClear_Click.

Private Sub cmdExit_Click()

Заголовок процедуры, яка выполняется в случае события Click – щелчка кнопкой мыши на кнопке cmdExit (Вихід).

End

Конец работы программы

End Sub

Конец процедуры cmdExit_Click.

Private Sub cmdSolve _Click()

Заголовок процедуры, яка выполняется в случае события Click – щелчка кнопкой мыши на кнопке mdSolve (Розрахунок).

SPV = Val(txtSPV.Text)

Переменной SPV присваивается значение свойства Text поля txtSPV – значение суммы первоначального взноса, которое введено в поле txtSPV. При этом выполняется преобразование текстового значения на числовое с помощью функции Val.

V = Val(txtV.Text)

Переменной V присваивается значение свойства Text поля txtV – значение банковского процента.

P = Val(txtP.Text)

Переменной P присваивается значение свойства Text поля txtP – значение периода.

SR=SPV

Переменной SR перед началом цикла присваивается значение переменной SPV.

For i=1 To P

Для і, которое изменяется от 1 до Р (так как Step N не определен, шаг изменения равняется 1), пока і<=P выполняется действие

SR=SR*(100+V)/100

Переменной SR присваивается значение – предыдущее значение SR умноженное не (100+V)/100

Next

Значению і присваивается значение і+1, выполнятеся переход к строке For.

lblSR.Caption = str(SR)

Свойству Caption этикетки lblSR присваивается значение SR, которое функцией str преобразовывается с числового типа в текстовый

End Sub

Конец процедуры cmdSolve _Click.