Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция «visual Basic For Application» По Информатике (Петрова В. В.).ppt
Скачиваний:
29
Добавлен:
07.10.2014
Размер:
2.43 Mб
Скачать

Программирование разветвляющихся процессов

Условный оператор

Алгоритмы, в которых последовательность выполняемых действий зависит от выполнения проверяемых условий, называются нелинейными. Они программируются с помощью условного оператора.

В языке VB есть две формы условного оператора: однострочная и многострочная. Однострочная такова:

If Условное выражение Then Оператор1 [ElseОператор2] Квадратные скобки содержат конструкции, которые могут отсутствовать.

Многострочная форма оператора более сложная: If Условное выражение Then Последовательность операторов1

[Else

Последовательность операторов2]

End If

Условный оператор

Условное выражение – это простое или сложное условие в состав, которого могут входить: переменные, константы, числа, связанные знаками арифметических и логических операций, а также знаками операций отношения. Условное выражение может принимать только два значения True и False. Логические операции в порядке приоритета их выполнения: Not, And, Or.

Примеры:

If x<y Then max=y Else max=x ‘ однострочный оператор

If ((Sex$=“м”) And (Age! >=60)) Or ((Sex$=“ж”) And (Age! >=55))

Then

V=P+Z : Goto 1 Else

V=Z : Goto 1

End if ‘ многострочный оператор N=N+1 : Goto 2

1:Текст1=Str(V)

 

Условный оператор

 

Задача: Найти сумму бесконечного числового ряда с

заданной точностью , S=1+1/2+1/4+1/8+…

 

 

 

начало

 

начало

 

n=1:v=1:s=1:s1=0

 

n=2*n:v=1/n

 

n=2*n

s1=s

 

v=1/n

 

 

 

s=s+v

 

s=s+v

 

|v|<

нет

|s-s1|<

нет

 

 

да

 

да

 

 

s,v,n

 

s,v,n

 

 

конец

 

конец

 

Пример программы

Private Sub Комманда1_Click() n = 1: v = 1: s = 1: s1 = 0

eps = Val(Текст1) 1: n = 2 * n

v = 1 / n s = s + v

If Abs(s - s1) < eps Then Текст2 = Str(s) Else s1 = s:GoTo 1 Текст2 = str(s)

End Sub

Оператор выбора Select Case

Условный оператор при многократном вложение применять не рекомендуется – программа становится громоздкой и трудной для понимания. В этом случае лучше использовать оператор выбора.

Синтаксис оператора: Select Case Выражение

Case ДиапазонЗначений1 ПоследовательностьОператоров1

Case ДиапазонЗначений2

ПоследовательностьОператоров2

Case Else

ПоследовательностьОператоровN

End Select

(В выражении ключевое слово Is должно стоять перед любым знаком отношения.)

Оператор выбора Select Case

Задача: Преподаватель за каждую решённую на контрольной работе задачу начислял баллы: за 1 и 2 по 6 баллов, за 3 и 4 по 9 баллов, за 5 по 12 баллов. Оценка за контрольную зависит от суммы набранных баллов.

Спроектируем форму:

Программный код должен содержать 5 одинаковых процедур для 5 событий – щелчок мышью по каждому из 5 контрольных индикаторов. Каждое событие будет вызывать последовательность действий:

Переменным: v1%, v2%, v3%, v4%, v5% - будут присвоены значения свойства Value пяти контрольных полей;

Будет вызвана процедура Summa, которая сначала присвоит переменной s% значение равное сумме набранных баллов, а затем присвоит переменной m% значение, равное оценке за контрольную работу.

Ниже приведены тексты одной процедуры CheckBox1_Click() и процедуры Summa, которая вызывается оператором Call. Процедура Summa демонстрирует использование оператора Select Case. Диапазоны значений переменной S% задаются с помощью ключевого слова To и с помощью неравенств и ключевого слова Is

Sub Summa(v1%, v2%, v3%, v4%, v5%, s%, m%)

s% = -(v1% * 6 + v2% * 6 + v3% * 9 + v4% * 9 + v5% * 12) Select Case s%

Case Is < 15 m% = 2

Case 15 To 24 m% = 3

Case 25 To 34 m% = 4

Case Is > 35 m% = 5 Case Else m% = 0 End Select End Sub

Соседние файлы в предмете Информатика