Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный практикум по Visual Basic.doc
Скачиваний:
51
Добавлен:
31.08.2019
Размер:
10.63 Mб
Скачать

Лабораторная работа №7. Программирование ветвлений с использованием оператора Case

Цель работы: рассмотреть структуру оператора выбора Case; научиться применять оператор Case в создаваемых приложениях

Теоретическая часть

Оператор выбора Select Case применяется, когда одна величина участвует в нескольких сравнениях и определяет, какая последовательность операторов будет выполняться. Алгоритм такого множественного сравнения можно запрограммировать и с использованием оператора If…Then, но применение структуры Select Case эффективнее.

Синтаксис оператора Select Case приведен ниже:

Select Case Выражение

Case Значение_1

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

Case Значение_2

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

Case Значение_(N-1)

Последовательность _Операторов_(N-1)

[Case Else

Последовательность _Операторов_N]

End Select

Здесь Select Case, Case, Case Else, End Select – ключевые слова Visual Basic;

Выражение – арифметическое или символьное выражение;

Последовательность_операторов_1 – выполняется при совпадении Значения_1 и значения Выражения и т.д.

Часть оператора Case Else заключена в скобки, т.к. является необязательной, т.е. может отсутствовать.

Оператор Case Select обязательно должен заканчиваться оператором End Select

Практическая часть

Задание 1. Программа определения дня недели.

Постановка задачи

Составить программу, определяющую название дня недели по его номеру, введенному пользователем.

Ход работы.

  1. Создайте папку Лабораторная_работа_№7, а в ней папку – 7.1.

  2. Запустите программу Microsoft Visual Basic 6.0.

  3. В появившемся окне выберите тип приложения STANDARD.exe и нажмите кнопку «Открыть».

  4. Разместите на форме 2 компонента CommandButton, 3 компонента Label, 1 компонент TextBox.

  5. Установите свойства компонентов в соответствии с Таблицей 7.1. Примерный внешний вид приложения приведен на Рис.7.1

Таблица 7.1 – Значения свойств компонентов приложения «День недели»

Компонент

Свойство

Значение

Form1

Caption

День недели

Name

frmДень

MinButton, MaxButton

False

Command1

Caption

Определить день недели

Name

cmdDen

Label1

Caption

Введите номер дня недели (от 1 до 7):

Label2

Caption

Это день недели -

Label3

Caption

Command2

Caption

Очистить

Name

cmdO4istka

TextBox1

Text

Для всех компонентов свойство Font и Color – по своему усмотрению

У компонентов CommandButton свойство Style = 1 Graphical

  1. Откройте окно программного кода (View - Code).

  2. В верхних строках программного кода опишите переменные входных и выходных данных:

Dim x As Byte

  1. Щелкните два раза по кнопке «Определить день недели» и напишите обработчик события Click (необходимые комментарии приведены после апострофов):

Private Sub CmdDen_Click()

x = Val(Text1.Text) 'получение числа X из поля Text1

Select Case x

Case 1

Label3.Caption = "Понедельник"

Case 2

Label3.Caption = "Вторник"

Case 3

Label3.Caption = "Среда"

Case 4

Label3.Caption = "Четверг"

Case 5

Label3.Caption = "Пятница"

Case 6

Label3.Caption = "Суббота"

Case 7

Label3.Caption = "Воскресенье"

Case Else

Label3.Caption = "Дня с таким номером не существует"

End Select

End Sub

  1. Напишите обработчик события Click для кнопки «Очистить», применив навыки, полученные при выполнении предыдущих лабораторных работ

  2. Сохраните проект (выбрав File – Save frmДень.frm и Save День.vbp) в папке 7.1.

  3. Проверьте работоспособность проекта, запустив его на выполнение.

  4. Создайте exe-файл программы с помощью команды File Make День.exe.

  5. Выйдите из среды Visual Basic.

  6. Запустите на выполнение файл День.exe и убедитесь, что проект работает автономно, как любые другие Windows-приложения.

Подведем итоги

В работе были использованы новые

операторы:

Select Case – условный оператор, применяющийся, когда одна величина участвует в нескольких сравнениях и определяет, какая последовательность операторов будет выполняться

Задания для самостоятельного выполнения

1. Составьте конспект по теоретической части лабораторной работы. Выполненное задание покажите преподавателю.

2. Вывести на экран сообщение в зависимости от введенного значения оценки (по десятибалльной системе), например: от 1 до 2: плохо, от 3 до5 – удовлетворительно и т.д., иначе неправильный ввод данных.

3. Составить программу, которая в зависимости от введенного номера месяца выводит название сезона, к которому он относится.

4. Составить программу, которая выводит на экран сообщение в зависимости от введенного значения температуры воздуха (от -50 до + 50ºС), например: -50..-20 – очень холодно; -19..-10 – холодно и т.д.; предусмотреть вариант неправильного ввода данных.

5. Составить программу случайного предсказания одного из десяти вариантов ближайшего будущего:

Вариант

Предсказание

1

Счастье

2

Дальняя поездка

3

Радость

4

Любовь

5

Неожиданная встреча

6

Большая прибыль

7

Удача

8

Дети

9

Неожиданные затруднения

10

Новое знакомство

Предусмотреть вариант неправильного ввода данных (например, число больше 11 или введены символьные данные).

6. Составить программу, которая определит план Вашей жизни на неделю. Например, суббота – еду в баню, воскресенье – еду в гости и т.п. Программа запрашивает ввод дня недели выводит на экран Ваши действия в зависимости от составленного расписания.

7. Синоптики объявляют погоду на ближайшие дни: 1 – солнце, 2 – дождь, 3 – туман, 4 – ветер, 5 – снег. Зная нужную погоду, Вы принимаете решение: жду нужную погоду, иду на работу или беру отгул. Программа запрашивает ввод номер погоды и выводит на экран Ваше решение.

8. Написать программу, которая после введенного с клавиатуры числа (в диапазон от 1 до 999), обозначающего денежную единицу, дописывает слово «рубль» в правильной форме. Например, 12 рублей, 21 рубль и т.д.

9. Написать программу, которая после введенного с клавиатуры числа (в диапазон от 1 до 99), обозначающего денежную единицу, дописывает слово «копейка» в правильной форме. Например, 17 копеек, 31 копейка и т.д.

10. Написать программу, которая анализирует данные о возрасте и относит человека к одной из четырех групп: дошкольник, ученик, работник, пенсионер. Возраст вводится с клавиатуры

Вопросы для контроля

1. Каков формат оператора Select Case?

2. С помощью какого оператора удобнее решать задачи с условием? Всегда ли можно применить оператор выбора Select Case?

3. Является ли обязательной часть оператора Case Else? Как ее отсутствие повлияет на выполнение программы?