Основы и принципы работы в VBA. Часть 1: Методические указания к выполнению лабораторных работ, страница 7

Select Case km

Case 1001 To 2000

P = 3/20

Case 2001 To 3000

P = 7/20

Case Is >= 4001

P = 10/20

End Select

MsgBox ("Частость по интервалу пробега равна" & P)

End Sub

Слово Is, используемое в программе, является ключевым словом VBA, обозначающим тестируемое выражение в операторе Case.

В операторе Case допустимо использовать составные условия подобно тому, как это делается в условном операторе.

Пример  3.

Case 5, 6, 9 to 10, 13, 14, Is >=16

В этом операторе проверяется, принадлежит ли значение тестируемого выражения отрезку от 9 до 10 или равняется одному из значений 5, 6, 13, 14, или оно не меньше 16.

4.2. Индивидуальные задания

4.2.1. Простое ветвление. Логические операции

Разработать алгоритм и программу в соответствии с индивидуальным заданием, применяя линейную форму оператора условного перехода и логические операции. Ввод исходных данных выполнить с помощью функции InputBox, вывод результата - Cells или MsgBox (см. подразд. 4.1, пример 1).

1)  Даны два вещественных числа – С и D. Вывести на печать произведение этих чисел, если второе число имеет целую часть больше, чем первое,   а дробная часть их суммы не превышает 0,3, в противном случае – их сумму.

2)  Даны два числа – А и В. Если первое число окажется четным, а второе кратным пяти, то вывести на печать их отношение (А/В), в противном случае – результат целочисленного деления числа А на число В.

3)  Даны два числа – К и Р. Если второе число окажется нечетным,         а первое при этом будет представлять собой целый остаток от деления второго числа на три, то вывести на печать сумму квадратов заданных чисел, в противном случае необходимо оба числа обнулить.

4)  Даны два числа – N и М. Если первое число окажется кратным пяти или второе число будет нечетным, то вывести на экран сумму модулей заданных чисел, в противном случае – разность квадратов модулей, заданных чисел.

5)  Даны два вещественных числа – W и R. Если хотя бы одно из этих чисел имеет целую часть, кратную трем, то вывести на печать произведение заданных чисел,  в противном случае – их разность.

6)  Даны два вещественных числа – D и В. Если хотя бы одно из них имеет дробную часть, не превышающую 0,43, то вывести на печать среднеарифметическое заданных чисел, в противном случае их необходимо
обнулить.

7)   Даны два вещественных числа – U и L. Если первое число имеет дробную часть больше 0,75 или если второе число имеет целую часть, кратную 10, то вывести на печать разность заданных чисел, в противном случае – их произведение.

8)  Даны три числа – а, b, с. Определить максимальное из этих чисел  и вывести его на печать.

9) Даны три числа – k, p, n. Определить минимальное из этих чисел и вывести его на печать.

10) Определить, в каком квадранте находится точка А с координатами
 (х; у). Вывести на печать координаты точки и номер квадранта.

11) Даны три натуральных числа. Определить, можно ли построить треугольник с длиной сторон, равной этим числам.

12) Выполнить расчет функции

где a, b – любые числа.

13) Выполнить расчет функции

где a, b, с любые числа.  

14) Выполнить расчет функции

15) Выполнить расчет функции

    

16) Даны два вещественных числа – а и b. Вычислить, если это возможно,  сумму натуральных логарифмов этих чисел.

4.2.2. Сложное ветвление

Составить алгоритм и программу вычисления функции у в соответствии  с вариантом индивидуального задания (табл. 4.2). Для ввода аргумента х использовать функцию InputBox, для вывода значения функции у - функции Cells, MsgBox (см. подразд. 4.1, пример 1).


Таблица 4.2

Данные для вычисления функции у с использованием условного оператора

Номер

варианта

Функция

Исходные данные

Результат

1

2

3

4

1

       a = 0,12; b = -4,4;

x1 = 0,17;

x2 = 1,2;

x3 = 3,9

y1 = -4,39;

y2 = 3,76;

y3 = 7,3

2

L = 6,2;

x1 = -1,1;

x2 = 0,2;

x3 = 1,6

y1 = 0,31;

y2 = 0,89;

y3 = 0,29

3

a = 2,8;

x1 = 0;

x2 = 2;

x3 = 5,3

y1 = 0;

y2 = 22,4;

y3 = 3,88

4

a = 0,01; b = -2p;

x1 = -3,6;

x2 = 0;

x3 = 7,1

y1 = 0,009;

y2 = 0;

y3 = 1,9

5

a = 98,3; b = 4,5;

x1 = 0,1;

x2 = 0,33;

x3 = 1,8

y1 = 4,59;

y2 = 15,2;

y3 = 4,13

6

a = 2,81; b = 5,96;

x1 = -12,6;

x2 = 3,2;

x3 = 10,3

y1 = 180,9;

y2 = 3,867;

y3 = -0,3

7

a = 4,4;

x1 = -7,5;

x2 = 3,98;

x3 = 1000

y1 = -0,82;

y2 = 0,55;

y3 = -1,28

8

a = 2;

x1 = 1,3;

x2 = 2;

x3 = 9,9

y1 = 2,612;

y2 = 2,016;

y3 = 0,813

Окончание табл. 4.2

1

2

3

4

9

a = 11,3;

x1 = -2,3;

x2 = 0,1;

x3 = 2,3

y1 = 0,362;

y2 = 12,01;

y3 = -0,42

10

a = 0,1;

x1 = -9,2;

x2 = 20;

x3 = 28,3

y1 = -0,002;

y2 = 0,66;

y3 = 2,90

11

b = 7,2;

x1 = –1;

x2 = 7,2;

x3 = 38

y1 = 1,945;

y2 = 0,999;

y3 = 3,553

12

a = -p;

x1 = 8,3;

x2 = 0;

x3 = –5,7

y1 = -3,4;

y2 = –4,33;

y3 = 2,61

13

w = -p/2;

x1 = 0,1;

x2 = 3,1;

x3 = 5,1

y1 = 0,009;

y2 = 0,944;

y3 = 0,0001

14

z = 2,3;

x1 = –4,5;

x2 = 0;

x3 = 4,5

y1 = 2,94;

y2 = 5,29;

y3 = 1,916

15

a = 3,8;

x1 = -5,1;

x2 = 3,3;

x3 = 5,1

y1 = 5,1;

y2 = 3,694;

y3 = 0,051


4.2.3. Задания на использование оператора выбора SelectCase

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

1)  По введенному коду детали (1 – шуруп, 2 – гайка, 3 – винт, 4 – гвоздь, 5 – болт) вывести ее название.

2)  Для введенной в цифровом виде школьной отметки вывести ее словесное описание (1 – «плохо», 2 – «неудовлетворительно», 3 – «удовлетворительно», 4 – «хорошо», 5 – «отлично»).