Private Sub cmdPower_Click( )




Циклы в Visual Basic

В настоящем занятии слушатель знакомится с основными циклическими конструкциями языка циклом с известным числом повторений For…Next и условным циклом Do…Loop.

1. Цикл For…Next в Visual Basic

Часто в программах требуется многократное выполнение одного или нескольких операторов. Для этого предназначены циклические конструкции или просто циклы. Когда программисту известно, какое число повторений данной группы операторов необходимо выполнить, можно воспользоваться циклической конструкцией For…Next.

Цикл For…Next является самой старой и самой простой циклической конструкцией Basic. Фрагмент блок-схемы, который реализует оператор For…Next, можно представить следующим образом:

Cинтаксис оператора For…Next следующий:

For Cчетчик=Начальное значение To Конечное значение [Step шаг]

Операторы блока S

Next [счетчик]

Операторы блока S называется телом цикла. Строка, начинающаяся с ключевого слова For, – заголовком цикла, строка с ключевым словом Next – концом цикла.

В начале выполнения цикла значение Счетчик устанавливается в Начальное значение. При каждом “проходе” цикла переменная Счетчик увеличивается на величину шага. Если она достигает Конечное значение, то цикл завершается и выполняются следующие за ним операторы.

Сделаем небольшой пример, чтобы на практике понять, как “работает” оператор For…Next.

На форму поместим одну командную кнопку cmdFor, а значение свойства Caption для нее зададим “ For…Next”.

Составим код для командной кнопки cmdFor, включив в него цикл. В теле цикла поместим строку Print “Visual Basic ”. Начальное значение счетчика зададим равное единице, конечное значение - 10, шаг 1.

Private Sub cmdFor_Click()

Dim I As Integer

CLS

For I = 1 To 10 Step 1

Print “Visual Basic ”

Next I

End Sub

Сделайте этот код на компьютере и запустите проект на выполнение. Вы увидите, что на форме 10 раз распечаталась фраза “ Visual Basic”.

Изменим теперь строку кода, соответствующую заголовку цикла, следующим образом: не будем указывать шаг.

For I = 1 To 10

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

Произведем следующие изменения в коде. Шаг сделаем 2. Заголовок цикла станет такой:

For I = 1 To 10 Step 2

В результате работы измененной программы фраза Visual Basic распечатается на форме 5 раз.

Составьте три варианта цикла, чтобы фраза Visual Basic распечатывалась на форме 10 раз. Меняйте каждый раз начальное и конечное значения счетчика цикла и шаг. Проверьте их на компьютере.

Немного модифицируем наш проект следующим образом: не будем в коде задавать начальное и конечное значения счетчика цикла и его шаг, а будем запрашивать все эти значения с помощью функции InputBox.

Private Sub cmdFor_Click()

Dim I As integer

Dim BeginZn As Single

Dim FinishZn As Single

Dim StepZn As Single

Cls

i = 0

BeginZn = 0

FinishZn = 0

StepZn = 0

BeginZn=InputBox(“Число”,“Начальное значение счетчика”)

FinishZn=InputBox(“Число”, “Конечное значение счетчика”)

StepZn = InputBox (“Число”, “Значение шага”)

For I = BeginZn To FinishZn Step StepZn

Print “Visual Basic”

Next I

End Sub

2. Вычисление степени числа два

Попробуем сделать небольшой проект, в котором для введенного пользователем натурального показателя степени n вычислялось бы значение . Использовать при вычислении можно только действие умножение.

Начнем новый проект. На форму frmTwoPower поместим текстовое окно, в которое пользователь будет вводить значение показателя степени иметку суказанием для пользователя, что ему нужно сделать. Кроме этого пусть на форме будут две командные кнопки: cmdExit для выхода из проекта и cmdPower для вычисления степени.

Форма после описанных действий может выглядеть, например, так:

Для вычислений организуем цикл For…Next. Будем умножать на 2 накопленное произведение (n-1) раз:

For i = 1 To n - 1

TwoPower = 2 * TwoPower

Next i

TwoPower – это накопленное произведение, которое после завершения цикла и будет являться искомым значением, i переменная цикла.

Очевидно, для вычислений нам понадобятся переменные. Объявим в разделе General формы следующие переменные:

Dim TwoPower As Long

Dim n As Integer

Dim i As Integer

Начальное значение переменной TwoPower (до цикла) примем равным 2. Распечатывать результат расчетов можно, например, с помощью метода Print на форме. Вот как может выглядеть форма после того, как были произведены соответствующие расчеты и распечатан результат:

Распечатку результата расчета сделаем в отдельной процедуре Printer(), а в процедуре для cmdPower будем ее вызывать.

Допишите процедуру для расчетов:

Private Sub cmdPower_Click()

Call Printer

End Sub

Допишите процедуру, печатающую на форме результат расчетов.

Private Sub Printer()

End Sub

Опробуйте работу проекта на компьютере.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-06-30 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: