Лабораторная работа №3. Разветвляющийся алгоритм: выбор по условию
Предварительные сведения
Проверка условия и реализация разветвляющегося алгоритма производится с помощью команды IF («если»).
Ее синтаксис таков:
If <условие> Then
Группа команд 1
Else
Группа команд 2
End If
<условие> – логическое выражение, принимающее значение «истина» или «ложь». Если его значение равно «истина», выполняется группа команд, идущая после служебного слова Then («то») (Группа команд 1). Если же значение условия ложно, то выполняется группа команд (Группа команд 2), идущая после служебного слова Else («иначе»).
Пример 1
Дано целое число. Если оно является положительным, то прибавить к нему 1; в противном случае не изменять его. Вывести полученное число.
Порядок выполнения работы
1 Требования к заголовку пользовательской формы аналогичны требованиям предыдущего задания.
2 Сама форма должна содержать надпись Label1 и одну копку CommandButton1 с соответствующим заголовком (рис. 13). Ввод чисел будет производиться в окне ввода InputBox, вызываемом в теле процедуры.
![]() |
3 Блок-схема алгоритма данной задачи имеет вид:
4 Подпрограмма для примера 1 следующая:
Private Sub CommandButton1_Click()
Dim x As Integer
x = InputBox("Введите х", "Окно ввода данных")
If x > 0 Then
x = x + 1
End If
MsgBox x
End Sub
Пример 2
Найти максимальное из трех чисел, вводимых с клавиатуры.
Порядок выполнения работы
1 Форма также должна содержать надпись Label1 и одну копку CommandButton1 с соответствующим заголовком (рис. 14). Ввод чисел будет производиться в окне ввода InputBox, вызываемом в теле процедуры. Требования к заголовку пользовательской формы аналогичны требованиям предыдущего задания.
2 Блок-схема алгоритма данной задачи имеет вид:
![]() |
3 Подпрограмма для примера 2 следующая:
Private Sub CommandButton1_Click()
Dim x As Integer, y As Integer, z As Integer, M As Integer
x = InputBox("Введите х", "Окно ввода данных")
y = InputBox("Введите y", "Окно ввода данных")
z = InputBox("Введите z", "Окно ввода данных")
If x > y Then
If x > z Then
M = x
Else
M = z
End If
Else
If y > z Then
M = y
Else
M = z
End If
End If
MsgBox M
End Sub
Пример 3
Ввести с клавиатуры число и проверить: если оно принадлежит интервалу (–10; 0), вывести его модуль, в противном случае вывести соответствующее сообщение.
Порядок выполнения работы
1 Форма также должна содержать надпись Label1 и одну копку CommandButton1 с соответствующим заголовком (рис. 13, рис. 15). Ввод чисел будет производиться в окне ввода InputBox, вызываемом в теле процедуры. Требования к заголовку пользовательской формы аналогичны требованиям предыдущих заданий.
2 Блок-схема алгоритма данной задачи приведена в приложении 1, стр. 121.
3 Подпрограмма ввода чисел и проверки на принадлежность заданному интервалу имеет следующий вид:
Private Sub CommandButton1_Click()
Dim x As Double
x = InputBox("Введите x", "Окно ввода данных")
If x > -10 And x < 0 Then
MsgBox("x принадлежит интервалу -10,0")
MsgBox("модуль x =" & Abs(x))
Else
MsgBox("x не принадлежит интервалу -10,0")
End If
End Sub
Пример 4
Проверить, какие из чисел А, В, С являются четными.
Порядок выполнения работы
1 Форму можно оформить аналогично примеру 1 (рис. 13).
2 Блок-схема алгоритма этой задачи имеет вид:
![]() |
3 Подпрограмма ввода чисел и проверки их на четность следующая:
Private Sub CommandButton1_Click()
Dim A As Integer, B As Integer, C As Integer
A = InputBox("Введите А", "Окно ввода данных")
B = InputBox("Введите В", "Окно ввода данных")
C = InputBox("Введите С", "Окно ввода данных")
If A Mod 2 = 0 Then MsgBox "А - четное" Else MsgBox "А - нечетное"
If B Mod 2 = 0 Then MsgBox "B - четное" Else MsgBox "B - нечетное"
If C Mod 2 = 0 Then MsgBox "C - четное" Else MsgBox "C - нечетное"
End Sub
! Обратите внимание:
1) Если условие сложное, элементарные условия, его составляющие, связываются операциями And (логическое умножение: «и»), Or (логическое сложение «или»), Xor («исключающее или»), Not (логическое отрицание).
2) Символ «&», используемый при выдаче результатов, обозначает операцию сложения строк. Так, результатом операции сложения двух строк: «у=» и «5», записанной в виде: «у=» & «5», будет строка: «у=5».
3) Проверка на четность или кратность числа осуществляется с помощью операции mod (результат операции x mod y равен остатку от деления x на y):
Четное число х |
x mod 2=0 |
Нечетное число х |
x mod 2=1 или x mod 2< >0 |
Кратное трем число х |
x mod 3=0 |
Кратное n число х |
x mod n=0 |
Некратное n число х |
x mod n< >0 |
Варианты
1 Ввести с клавиатуры число и проверить: если оно не принадлежит интервалу (–20; –5), то вывести его модуль, в противном случае вывести соответствующее сообщение.
2 Даны действительные числа x, y, z. Найти минимальное из них.
3 Проверить, какие из чисел А, В, С принадлежат интервалу (1; 25) и являются четными.
4 Проверить, какие из чисел X, Y, Z принадлежат отрезку [7; 30] и не являются четными.
5 Дано целое число. Если оно является положительным, то отнять от него 2; в противном случае не изменять его. Вывести полученное число.
6 Дано целое число. Если оно является четным, то прибавить к нему 1; в противном случае вычесть из него 3. Вывести полученное число.
7 Дано целое число. Если оно является отрицательным, то прибавить к нему 4; если положительным, то вычесть из него 5; если нулевым, то заменить его на число 10. Вывести полученное число.
8 Даны два числа. Вывести большее из них.
9 Ввести с клавиатуры число и проверить: если оно принадлежит отрезку [–15; 8], то вывести его квадрат, в противном случае вывести соответствующее сообщение.
10 Ввести с клавиатуры число и проверить: если оно не принадлежит отрезку [3; 10], то вывести квадратный корень из его модуля, в противном случае вывести соответствующее сообщение.
11 Ввести с клавиатуры число и проверить: если оно является положительным, то вывести его квадрат, в противном случае вывести его модуль.
12 Даны действительные числа А, В, С. Проверить, выполняются ли неравенства А<B<C; если да, то присвоить А=В+С, иначе А=С–В. Вывести значение А.
13 Даны две переменные целого типа: А и В. Если их значения не равны, то присвоить каждой переменной сумму этих значений, а если равны, то присвоить переменным нулевые значения. Вывести новые значения переменных А и В.
14 Даны два числа. Вывести меньшее из них.
15 Даны две переменные целого типа: X и Y. Если их значения не равны, то присвоить каждой переменной произведение этих значений, а если равны, то не изменять их значения. Вывести новые значения переменных X и Y.
16 Даны два числа вещественного типа. Если их значения равны, то заменить каждое число его модулем, а если не равны, то увеличить каждое число в 2 раза. Вывести полученные числа.
17 Даны действительные числа C, D, F. Проверить, выполняются ли неравенства D>C>F; если да, то присвоить C=ln|D|+F, иначе вывести сообщение «Неравенства не выполняются».
18 Проверить, какие из чисел C, D, F являются положительными и кратными трем.
19 Ввести с клавиатуры число и проверить, если оно является четным, то удвоить его; в противном случае не изменять его. Вывести полученное число.
20 Даны две переменные вещественного типа: А и В. Если A>B, то найти их произведение. В противном случае найти их частное.
21
Даны
две переменные целого типа: C и D. Если , то заменить каждую переменную единицей,
иначе присвоить каждой переменной ее квадрат. Вывести новые значения переменных
C и D.
22 Даны две переменные вещественного типа: X и Y. Если их значения не равны, то присвоить каждой переменной разность X–Y; а если равны, то увеличить переменную X на 2, а переменную Y оставить без изменений. Вывести полученные значения переменных X и Y.
23 Ввести с клавиатуры целое число и проверить: если оно не является кратным 5, то уменьшить его на 10, иначе увеличить в два раза. Вывести полученное число.
24 Проверить, какие из чисел А и В являются положительными и кратными 7.
25 Дано целое число. Если оно принадлежит интервалу (–3; 17), то прибавить к нему 1; в противном случае не изменять его. Вывести полученное число.
26 Дано целое число. Если оно не принадлежит интервалу (40; 100) и не является четным, то прибавить к нему 5; в противном случае заменить его на ноль. Вывести полученное число.
27 Для заданного вещественного числа х найти значение функции y:
28 Для заданного целого числа х найти значение функции y:
29 Для заданного вещественного числа х найти значение функции f:
30 Для заданного целого числа х найти значение функции z:
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.