Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы / лаб раб 9 программирование часть 2 / Программирование в MS Access часть 2.doc
Скачиваний:
70
Добавлен:
02.05.2014
Размер:
119.81 Кб
Скачать

Семенова И.И. Программирование в MS Access. Часть 2. - 3-

Программирование в ms Access. Часть 2. Инструкция If...Then...Else

Задает выполнение определенных групп инструкций в зависимости от значения выражения.

IfусловиеThen[инструкции] [Elseинструкции_else]

Допускается также использование блоковой формы синтаксиса:

IfусловиеThen

[инструкции]

[ElseIfусловие-nThen

[инструкции_elseif] ...

[Else

[инструкции_else]]

EndIf

Пример.Генерирует случайное число от 0 до 3 и по полученному значению из условия выводит соответствующее сообщение.

Private Sub If_Else()

Dim I As Integer

I = Int((3 * Rnd) + 1)

If I = 1 Then

MsgBox "Выполнено 1-ое условие", vbOKOnly

ElseIf I = 2 Then

MsgBox " Выполнено 2-ое условие", vbOKOnly

Else

MsgBox " Выполнено 3-ое условие", vbOKOnly

End If

End Sub

Задание.В модуле создать новую частную процедуру с именемSimple2_1, создать переменную логического типа и присвоить ей значениеTrue. Сделать условие, которое бы выводило сообщение «Переменная = ИСТИНА» или «Переменная = ЛОЖЬ» по соответственному значению объявленной логической переменной.

Инструкция Do...Loop

Повторяет выполнение набора инструкций, пока условие имеет значение Trueили пока оно не примет значениеTrue.

Do [{While | Until} условие]

[инструкции]

[Exit Do]

[инструкции]

Loop

Пример: Вывод в цикле сообщений. Причем, если значение переменной I = 6, то происходит принудительный выход из цикла.

Private Sub DoWhile()

Dim I As Integer

I = 1

Do While I < 10

MsgBox "Cообщение = " + CStr(I), vbOKOnly

I = I + 1

If I = 6 Then

Exit Do

End If

Loop

End Sub

Задание. В модуле создать новую частную процедуру с именемSimple2_2. Объявить переменную типа длинное целое и присвоить ей значение 3. В процедуре создать цикл, в котором бы переменная умножалась на случайное число в диапазоне от 0 до 30. Результат умножения сохранять в той же переменной. Цикл прекращает работу, когда значение переменной станет больше 10 000.

Инструкция While...Wend

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

Whileусловие

[инструкции]

Wend

Инструкция For...Next

Повторяет выполнение группы инструкций указанное число раз.

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

[инструкции]

[ExitFor]

[инструкции]

Next[счетчик]

Пример. Создается массив для хранения целых чисел и заполняется произведениями номера строки на номер столбца с выводом значения каждого элемента массива на экран

PRIVATE For_Next ( )

Dim array_1(3, 4) As Integer

Dim i, k As Integer

For i = 1 To 3

For k = 1 To 4

array_1(i, k) = i * k

MsgBox CStr(array_1(i, k)), vbOKOnly

Next

Next

End Sub

Задание:В модуле создать новую частную процедуру с именемSimple2_3. Создать двумерный массив размером 3х5 с названиемArray_Base. Заполнить его в цикле суммой номера строки на номер столбца текущего элемента массива. Вывести сообщения, в которых будут отображены значения элементов каждой строки через точку с запятой: например, 2; 3; 4; 5; 6

3; 4; 5; 6; 7

. . .

Инструкция Select Case

Задает выполнение определенных групп инструкций в зависимости от значения выражения.

SelectCaseвыражение

[CaseсписокВыражений-n

[инструкции-n]] ...

[CaseElse

[инструкции_else]]

EndSelect

Инструкция SelectCaseможет служить альтернативой инструкцииElseIfвIf...Then...Elseпри оценке одного выражения, которое имеет несколько возможных значений. В то время какIf...Then...Elseдля каждой инструкцииElseIfоценивает разные выражения, инструкцияSelectCaseоценивает выражение только один раз, в начале управляющей структуры. Необязательная инструкцияCaseElseвыполняется, еслиSelectCaseне находит подходящего значения ни в одной из инструкцийCase.

Пример.Генерирует случайное число от 0 до 6 и по полученному значению из условия выводит соответствующее сообщение.

Private Sub SelectCase ( )

Dim I As Integer

I = Int((6 * Rnd) + 1)

Select Case I

Case 1 to 3

MsgBox "Выполнено 1-ое условие, где I = (1 или 2 или 3)", vbOKOnly

Case 4, 6

MsgBox " Выполнено 2-ое условие, где I = (4 или 6)", vbOKOnly

Case Else

MsgBox " Выполнено 3-ое условие, где I любое, кроме (1, 2, 3, 4, 6)", vbOKOnly

End Select

End Sub