Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Безусловный цикл (Цикл по счетчику)Содержание книги
Поиск на нашем сайте
FOR … NEXT Цикл с определенным количеством повторений. Цикл выполняется от начального до конечного значения параметра с заданным шагом. Пример: Dim X As Integer For X=1 To 10 Step 1 ‘Повторять цикл от 1 до 10 с шагом 1. Beep ‘Звук (тело цикла). Next X ‘Конец цикла. Exit For или Exit Do ‘Д осрочный выход из цикла.
FOR EACH … NEXT Цикл For Each … Next предназначен для перебора всех элементов из заданного массива или набора объектов. Пример использования цикла применительно к массивам: Sub Mas6() Dim i As Integer Dim j As Integer Dim x(1 To 5, 1 To 5) As Single Dim S As Single Worksheets("Лист1").Activate For I =1 To 5 For j =1 To 5 x(i,j) = Cells(i,j) Next j Next i For Each e In x S = S + e Next e MsgBox(“S = ”) & CStr(s) End Sub Сложные (вложенные) циклы Совокупность простых циклов, вложенных один в другой, называется сложным (вложенным) циклом. При конструировании сложных циклов необходимо руководствоваться следующими правилами: · нельзя войти во внутренний цикл, минуя вход внешнего цикла; · имена параметров простых циклов не должны повторяться в конструкции сложного цикла; · простые циклы не должны пересекаться в конструкции сложного цикла, то есть окончание внешнего цикла не должно предшествовать окончанию внутреннего цикла. Примеры: For i =1 to n For j =1 to m A(i, j) = Int(Sin(j*i)*100) Next j Next i Do X =1 Z = 0 Do S = Int(Rnd(x)*100) Z = Z + S X = X + 1 Loop Until X>=20 Zsr = Z/20 Loop Until Zsr>=25 Вопросы для самоконтроля 1. Что такое цикл и для чего он нужен? 2. В чем основное отличие между циклами с предусловием и с постусловием? 3. В каких случаях целесообразно использовать циклы с предусловием, циклы с постусловием и циклы по счетчику? 4. В чем отличие между имеющимися вариантами циклов с предусловием? 5. В чем отличие между имеющимися вариантами циклов с постусловием? 6. Что такое сложный цикл и каковы основные правила его конструирования? Подпрограммы-процедуры и подпрограммы-функции Подпрограмма – это блок кода между операторами Sub и End Sub или Function и e nd Function. Подпрограмма-процедура – это блок кода, заключенный между операторами Sub и End Sub. Обычно подпрограмму-процедуру принято называть процедурой. При написании программы нужно учесть одно правило: “Внутри одной процедуры не может быть описана другая процедура”. Синтаксис: Sub <имя> (ByVal <параметр 1 > As <тип>, ByVal <параметр 2> As <тип>, …, ByVaL <параметр 3>, ByRef <параметр N> ) <блок кода процедуры> End Sub В скобках указываются необходимые параметры, если параметров нет, то просто пустые скобки. Например, напишем программу, выводящую на экран окно с приветствием: Sub Программа_Привет() MsgBox(“ПРИВЕТ”) End Sub Sub qwer(ByVal x As Single, y As Single, ByRef S As Single) Dim Z As Single Dim P As Single Z = Sin(2*x + 3*y) P = Cos(x^2 + y^3) S = Z + P End Sub Параметры, указанные в скобках заголовка процедуры, называются формальными. Параметры, значения которых передаются из программы (другой процедуры) в процедуру, называются параметрами-переменными. Параметры, значения которых передаются из процедуры в программу (другую процедуру), называются параметрами-значениями. Параметры, указанные в списке оператора вызова процедуры, называются фактическими параметрами. Ключевые слова ByVal и ByRef определяют способ передачи значений параметров. ByVal указывает, что аргумент передается по значению. ByRef указывает, что аргумент передается по ссылке. Значения параметров-переменных, передаваемых по способу ByVal, не могут изменяться в теле процедуры во время ее выполнения, то есть последние значения переменных в программе сохраняются неизменными во время выполнения процедуры. Значения параметров, передаваемых по способу ByRef, изменяют значения соответствующих переменных программы. Вызов процедуры из другой процедуры можно произвести несколькими способами. Первый способ: <Имя процедуры> <Список фактических параметров>. Список должен соответствовать списку, заданному в заголовке процедуры, по количеству и типу. Пример: qwer x,y,s ‘оператор вызова процедуры. Если требуется использовать несколько процедур с одинаковыми названиями, расположенными в разных модулях, то при их вызове перед именем процедуры через точку необходимо указывать имя модуля, в котором расположена процедура. Синтаксис: < Имя модуля >. < Имя процедуры > < Список фактических параметров >. Второй способ вызова процедуры производится с помощью инструкции Call. Синтаксис: Call < Имя процедуры > (<Список фактических параметров>). В отличие от первого способа здесь список фактических параметров заключается в скобки. Пример: Call qwer(x,y,s) Подпрограмма-функция – это блок кода, заключенный между операторами Function и End Function. Она выполняет какую-то операцию, но при этом обязательно возвращает какое-нибудь значение. Значение возвращается через имя функции. Синтаксис: Function <имя функции> (ByVal <параметр> As <тип> ) As <Тип> <код функции> End Function Пример:
|
||||
Последнее изменение этой страницы: 2016-12-16; просмотров: 547; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.142.124.119 (0.008 с.) |