|
ПРОГРАММЫ С РАЗВЕТВЛЕНИЕМ. УСЛОВНЫЕ ОПЕРАТОРЫЕсли некоторые действия в программе, например вычисления по формулам, должны происходить только при выполнении какого-либо условия, то такая программа имеет разветвление, которое обеспечивается условным оператором. Для записи проверяемого условия используются операции сравнения: > (больше), >= (больше либо равно), < (меньше), <= (меньше либо равно), = (равно), < > (не равно) Каждое условие всегда имеет два значения – либо оно верно (True – правда), либо неверно (False – ложь). Проверяемое условие может быть и сложным, состоящим из нескольких простых условий. Для записи сложного условия используются логические операции объединения: And – сложное условие верно, когда оба простых условия верны, иначе сложное условие будет ложным; Or – сложное условие верно, когда хотя бы одно из простых условий верно. Объединяя условия логическими операциями And и Or в различных вариантах, можно составить сложное условие, например: x >= 1 And x =< 10 Or x = 15 Это условие будет верно, если х находится внутри интервала [ 1:10] либо, если х = 15. Строчный и блочный условные операторы Условный оператор имеет общий вид If…Then…Else… (если…тогда…иначе…) и в строчной форме записи представляет конструкцию: If < условие > Then < оператор1 > Else < оператор2 > которая имеет следующий логический смысл: если условие выполняется, то нужно выполнить оператор 1, иначе – нужно выполнить оператор 2. Например: If Temper<10 Then MsgBox”Надеть куртку” Else MsgBox”Надеть ветровку” Если в результате проверки условия должны выполняться несколько операторов, то условный оператор записывается в блочной форме в виде: If < условие > Then <операторы> Else <операторы> End If Блочный условный оператор заканчивается строкой с ключевыми словами End If. Например: If Temperatura<10 Then MsgBox”Надеть куртку” MsgBox”Надеть сапоги” Else MsgBox”Надеть ветровку” MsgBox”Надеть кроссовки” End If В строчном и в блочном операторе может отсутствовать Else: If < условие > Then <операторы> End If Если необходимо проверить более одного условия, то можно использовать вложение операторов If друг в друга. Пример 1 программы вычислений по формулам с использованием строчного условного оператора If: ; ; Dim x As Single, y As Single, w As Single, n As Single x = Val(InputBox(«Введите x»)) n = Val(InputBox(«Введите n»)) y = Exp(-2 * x) + 1 z = Log(x) / (x + 1) If x < z ^ 2 Then w = Sqr(x * y) Else w = n * x + 2 Msgbox (“w=” & w) В этой программе можно вывести результат в ячейку на рабочем листе Excel. Для этого вместо MsgBox следует записать Worksheets(“Лист1”).Range(“a1”)=w Значение w будет выведено в ячейку А1 на рабочем листе с именем Лист1. Разветвляющиеся программы со сложными условиями Пример 2 программы вычислений значения функции y со сложным условием.Значения n и x вводятся с клавиатуры: . Private Sub CommandButton1_Click() Dim x As Single, n As Single, y As Single 'Ввод исходных данных x = Val(InputBox("Введите x ")) n = Val(InputBox("Введите n")) 'Проверка условий и расчет значений If x >= 0 And n >= 0 Then y = Sqr(x) If x < 0 And n < 0 Then y = n * x + 2 MsgBox ((“y=” & y) 'Вывод результата End Sub Пример 3 программы вычисления значения функции y с вложенным оператором If: . Private Sub CommandButton1_Click() Dim x As Single, y As Single x = Val(InputBox("Ввелите x ")) If x<0 Then y =x+5 Else If x<=5 Then y=Sqr(3*x) Else y =x^2 MsgBox (y) End Sub Пример 4 (использование блочного оператора If).Вычислить значения y=sin2x, w=ctgx, если х <5; y=1-sinx, w=arctgx, если х ³ 5. х={9; 0.1; -4; 5; 12} Private Sub CommandButton1_Click() Dim x As Single, y As Single, z As Single Dim w As Single, I As Integer For i=1 to 5 x = Val(InputBox("Введите значение х")) 'Проверка условий и расчет значений If x > 5 Then y = Sin(x)^2 w = cos(x)/sin(x) Else y = 1 - Sin(x) w = Atn(x) End If MsgBox (“x=” & x & “ y=” & y & “ w=” & w) Next End Sub Пример 5. Вычислить значение функции n: , x=1,7 s=5,2 значение j задать самостоятельно.
Оформим Лист2 согласно образцу (рис. 6.1). Переименуем «Лист2» в «Условный оператор», вставим расчетные формулы и введем исходные данные.
Рис. 6.1 − Образец оформления программы с разветвлением на листе Excel Для кнопки «Расчет If» напишем следующую процедуру: Конфликты в семейной жизни. Как это изменить? Редкий брак и взаимоотношения существуют без конфликтов и напряженности. Через это проходят все... Что вызывает тренды на фондовых и товарных рынках Объяснение теории грузового поезда Первые 17 лет моих рыночных исследований сводились к попыткам вычислить, когда этот... ЧТО ТАКОЕ УВЕРЕННОЕ ПОВЕДЕНИЕ В МЕЖЛИЧНОСТНЫХ ОТНОШЕНИЯХ? Исторически существует три основных модели различий, существующих между... Что будет с Землей, если ось ее сместится на 6666 км? Что будет с Землей? - задался я вопросом... Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:
|