русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Й час. Циклические вычисления


Дата добавления: 2015-07-23; просмотров: 653; Нарушение авторских прав


Допустим, в приложении необходимо выполнить одну и ту же последовательность действий 15 раз. Неужели для этого необходимо 15 раз повторять запись одной и той же последовательности операторов? Нет! Но чтобы избежать такой участи, надо организовать циклические вычисления. Циклические вычисления, или просто циклы, позволяют повторять выполнение одной группы операторов любое необходимое число раз. В этом часе вы изучите операторы Do… Loop и For… Next, используемые для организации циклических вычислений.

В этом часе будут рассмотрены следующие вопросы.

  • Выполнение оператора For.
  • Использование оператора Do... Loop.

Оператор For…Next

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

For счетчик = начало То конец [Step шаг]

[операторы]

[Exit For]

[операторы]

Next [счетчик]

Число выполнений этого оператора определяется параметрами начало и конец. Переменная счетчик при первом выполнении цикла имеет значение начало и каждый раз при выполнении оператора Next увеличивается на величину, заданную параметром шаг. Если этот необязательный параметр опущен, значение счетчик увеличивается на единицу. Параметр шаг может быть любым действительным числом, как целым, так и дробным, как положительным, так и отрицательным. (Отметим, что в зависимости от типа данных значений начало, конец и шаг объявляется соответствующий тип переменной счетчик.) Если параметр шаг положительный или опущен, то при превышении значения переменной счетчик значения параметра конец прекращается выполнение цикла. Необязательный оператор Exit For служит для экстренного прекращения цикла и обычно вкладывается в оператор If или Select Case.



Для экспериментов с оператором For... Next откройте новую рабочую книгу и сохраните ее под именем Час7. С помощью комбинации клавиш <Alt+F11> откройте редактор Visual Basic. Выполните следующие действия для создания простого примера с использованием оператора For... Next.

  1. В окне проектов Project Explorer щелкните правой кнопкой мыши на элементе ЭтаКнига и выполните команду Insert > Module (Вставка > Модуль).
  2. Вставьте новую процедуру и назовите ее Сигнал. Эта процедура должна исполнять звуковой сигнал компьютера заданное число раз.
  3. Введите следующий код процедуры:

Dim iCounter As Integer

For iCounter = 1 To 15

Beep

Next

  1. Нажмите клавишу <F5> для выполнения процедуры. Вы должны услышать звуковой сигнал.

В качестве эксперимента с оператором For измените число 15, например на 5 или 10000, чтобы увидеть (точнее, услышать) разницу. Если сравнить приведенный оператор For с его синтаксисом, то нетрудно заметить, что опущен элемент Step шаг. Рассмотрим еще один пример оператора For, где параметр шаг принимает отрицательное значение, осуществляя таким образом обратный счет значения переменной счетчик оператора For.

  1. Вставьте новую процедуру и назовите ее ОбратныйСчет. Эта процедура будет выводить последовательность окон сообщения, показывающих значения переменной iCounter (счетчик) при отсутствии параметра шаг и при его отрицательном значении.
  2. Введите код процедуры ОбратныйСчет:

Dim iCounter As Integer

For iCounter = 1 To 3

MsgBox “Счет вперед: “ & iCounter

Next

For iCounter = 3 To 1 Step -1

MsgBox “Обратный счет: “ & iCounter

Next

  1. Выполните процедуру. Вы увидите первое окно сообщения (рис. 7.1), показывающее, что текущее значение переменной iCounter равно 1.
  2. Щелкните в этом окне на кнопке ОК и затем таким же образом закройте следующие два окна сообщения. Далее должно появиться окно сообщения, показанное на рис. 7.2. В этом окне видно, что первоначальное значение счетчика равно 3.
  3. Щелкните на кнопке ОК. В последующих двух окнах значение счетчика каждый раз будет уменьшаться на единицу.
  4. Щелкайте на кнопке ОК в окнах сообщений, пока не завершится выполнение процедуры.

Рис. 7.1. Текст этого окна показывает, что первое значение счетчика равно 1

Рис. 7.2. В каждом последующем окне сообщения значение счетчика будет меньше, чем в предыдущем

Чтобы показать другие возможности применения оператора For, создадим еще одну процедуру, вычисляющую сложные проценты на вклады и конечную величину вклада при 10% годовых. Выполните следующее.

  1. Вставьте новую процедуру и назовите ее Вклад.
  2. Введите код процедуры:

Dim iNumberOfYears As Integer

Dim cSavings As Currency

Dim iCounter As Integer

cSavings = InputBox(“Введите сумму вклада:”)

iNumberOfYears = InputBox(“Введите число лет, на которые помещается вклад:”)

For iCounter = 1 То iNumberOfYears

cSavings = cSavings * 1.1

Next

MsgBox “3a “ & iNumberOfYears & “ лет вы получите по вкладу “ & _

Format(cSavings,”0.00”) & “ рублей”

  1. Выполните процедуру Вклад.
  2. Введите число 1000 в качестве суммы вклада.
  3. Введите число 10 как число лет, на которые помещается вклад. Следующее окно покажет общую сумму вклада за 10 лет. Вы не ожидали, что эта сумма составит 2593,74 рубля?
  4. Чтобы закрыть соблазняющее вас окно, щелкните на кнопке ОК.

В этой процедуре для вычисления конечного значения (переменная cSavings) используется переменная iNumberOfYears, задающая, сколько раз будет выполняться цикл. Вы, наверное, заметили новый оператор Format (cSavings, “0.00”), который преобразует значение переменной cSavings в формат с двумя десятичными разрядами.



<== предыдущая лекция | следующая лекция ==>
Использование встроенных диалоговых окон Excel | Оператор Do... Loop


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.162 сек.