Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа_3_1_Лс_27_11_2011.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
4.63 Mб
Скачать

Завдання на самостійну роботу(в,вс,лс)

ЗАВДАННЯ 6.2. Створіть проект для обчислення значення функції згідно з варіантом індивідуального завдання.

Приклад виконання

ЗАВДАННЯ СТВОРІТЬ ПРОЕКТ ДЛЯ ОБЧИСЛЕННЯ ЗНАЧЕНЬ ФУНКЦІЙ

Вихідні дані: x, а, b.

Результат. Вивести на формі q, t, m.

Обов'язкові умови. Введення вихідних даних x й а організувати за допомогою об'єкту TextBox. Розрахунки і виведення даних повинні виконуватися при натисканні відповідної кнопки.

Порядок виконання роботи

1. У проекті Лр6_Зад1_P_Прізвище видаліть кнопку Введення та відповідну процедуру Private Sub Cmd_ Введення _Click ().

2. Додайте текстове поле Text5 і мітку Label5.

3. Змініть властивості об'єктів згідно з умовою завдання (рис. 6.2).

Рис. 6.2. Вид форми

4. Змініть властивість MaxLength для Text2, Text3, Text4, встановивши значення 7 (для обмеження кількості символів в значенні, що виводиться).

5. Змініть процедуру обробки події Click для Cmd_ Розрахунок

6. Зберіжіть проект та форму в папці ЛАБ6 з новими іменами Лр6_Зад2_P_Прізвище й Лр6_Зад2_F_Прізвище відповідно.

Лабораторна робота № 7. Проектування додатків vb6, що містять галужені алгоритмічні структури. Заняття 1

Алгоритмы, в которых последовательность выполнения некоторых предписаний зависит от проверяемых исполнителем условий, называются нелинейными. Простейшим проявлением нелинейности в алгоритме является ветвление, которое представляет собой выбор пути решения задачи в соответствии с выполнением (невыполнением) некоторого условия выбора.

Условия выбора представляются в форме условных (логических) выражений. Условное (логическое) выражение — это либо простое, либо сложное условие. Условное выражение может принимать одно из двух значений: True (Истина) или False (Ложь). Простое условие — это два арифметических выражения, между которыми помещается знак операции отношения. Список операций отношения приведен в табл. 7.1.

Таблица 7.1

Операция

Тип данных

числовой

символьный

<

меньше

предшествует

<=

меньше или равно

предшествует или совпадает

=

равно

совпадает

<>

не равно

отличается

>=

больше или равно

следует за или совпадает

>

больше

следует за

Сложное условие в отличие от простого условия содержит логические операции Not, And, Or и др. Список основных логических операций приведен в табл. 7.2.

Таблица 7.2

Операнд1

Операнд2

Логические операции

Not

(НЕ)

And

(И)

Or

(ИЛИ)

False True

-

True

-

False

False

False

False

False

True

False

False

True

False

True

False

True

True

True

True

True

Например:

Условные выражения, построенные с помощью операций отношения:

"BETA" < "ALPHA" — выражение принимает значение False;

7 + 3 > 4 — выражение принимает значение True.

Например: Используя логические операции, можно описать, например, принадлежность точки с координатой X указанному интервалу (7, 12). На языке математики это условие записывается в виде

7<Х<12,

а в Visual Basic:

(X > 7) And (X < 12) или Not ((Х<= 7) Or (X>= 12))

Установлен следующий приоритет выполнения логических операций и операций отношения.

1) Вначале выполняются операции отношения (<, >, =, <>, >=, <=) в порядке следования слева направо.

2) Затем логические операции (показаны в порядке убывания приоритета): Not, And, Or.

Замечание При необходимости используйте круглые скобки для установки нужного порядка действий.

Логическое значение может быть присвоено только переменной, имеющей тип Boolean. Такая переменная может иметь одно из двух значений: True или False.

Например:

Dim Flag As Boolean

Flag = True

В Visual Basic есть два основных типа операторов выбора: If и Select Case.

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

Условный оператор If позволяет проверить некоторое условие. В зависимости от результата проверки выполняется одно действие или другое.

Формат однострочной записи оператора If

If УсловноеВыражение Then Оператор1 [Else Оператор2]

где УсловноеВыражение — любое логическое выражение.

Например: Краткая форма записи оператора

If A>B then A=2*A

В примере проверяется условие А>В. Если условие выполняется, то значение переменной А удваивается

Например: Полная форма записи оператора:

If A > В Then A=2*A Else B=B*2

If A <= В Then B=B*2 Else A=2*A

Оба кода выполняют одни и те же действия, и не имеет значения, какой из них выбрать. В данном примере при условии, что А > В, значение переменной А удваивается, в случае если А <= В, удваивается значение переменной В.

Например: Проверить, соответствует ли значение переменной True, можно следующими способами:

If Flag=True Then...

или

If Flag Then...

Формат многострочной записи оператора If

If УсловноеВыражение Then

<Последовательность Операторов1 >

[Else

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

End If

Например: Краткая форма записи оператора:

If ПравильныйОтвет= True Then

Rezult=True

lblОтвет="Молодец! Ответ верный"

End If

В данном примере, если значение переменной ПравильныйОтвет = True, то переменной Rezult присваивается значение True и в метку lblОтвет вводится текст "Молодец! Ответ верный"

Например: Полная форма записи оператора:

If imgl.Visible=True Then

lblОтвет. Сарtion="Молодец! Ответ верный"

img 1.Visible=False

img2.Visible=True

Else

lblОтвет. Сарtion ="Неверно, попробуй еще раз"

End If

В данном примере проверяется, виден ли объект imgl. Если виден, то в метке lblОтвет пишется текст "Молодец! Ответ верный", объект imgl делается невидимым, объект img2 видимым, в противном случае в метке lblОтвет пишется текст "Неверно, попробуй еще раз". Между строками If...Then и Else, а также Else и End If можно ввести любое количество операторов.

Рекомендация. Считается хорошим тоном выделять структуру операторов отступами, как это сделано в приведенных выше примерах. Это сделает Ваши программы "читабельными", в них будет легче разобраться.

Для анализа нескольких условий в структуру блочного оператора If...Then включаются строки (строка): Elself УсловноеВыражение Then

Формат блочного оператора If

If УсловноеВыражение1 Then

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

[Elself УсловноеВыражение2 Then

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

……

[Elself УсловноеВыражениеN Then

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

[Else

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

End If

Оператор Select 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 и Выражения и т.д.

ЗАВДАННЯ 7.1

Постановка задачи Доработка Проекта Лр4_Зад1 (Калькулятор)

ПРОЕКТ КАЛЬКУЛЯТОР, СОЗДАННЫЙ РАНЕЕ, НЕ ПРЕДОХРАНЁН ОТ ПОПЫТОК ВЫПОЛНЕНИЯ АРИФМЕТИЧЕСКИХ ДЕЙСТВИЙ НАД ТЕКСТОМ И ОТ ДЕЛЕНИЯ НА НОЛЬ. ДОПОЛНИТЬ ПРОГРАММНЫЙ КОД ПРОЕКТА ТАКИМ ОБРАЗОМ, ЧТОБЫ УСТРАНИТЬ ЭТИ НЕДОСТАТКИ. КРОМЕ ТОГО, НЕОБХОДИМО УСТАНОВИТЬ ПАРОЛЬ НА ПРОЕКТ.

Порядок действий

  1. Откройте проект Лр4_Зад1.

  2. Запустите проект на выполнение. Проверьте, выдается ли ошибка Division by Zero (Деление на ноль) при выполнении операции деления на 0 (рис. 7.1).

Рис. 7.1

  1. Измените процедуру деления таким образом, чтобы при попытке деления на ноль выдавалось следующее сообщение (рис. 7.2):

Рис. 7.2

Private Sub cmdDiv_CIick()

X = Val(txtX.Text)

Y = Val(txtY.Text)

If Y <>0 Then Rezult = X / Y: txtRezult.Text = Str(Rezult) Else MsgBox "На ноль делить нельзя!!!", 16, "Ошибка"

End Sub

  1. Проверьте правильность выполнения процедуры и сохраните изменения в проекте.

  2. Измените проект таким образом, чтобы при запуске калькулятора на экране появлялось приглашение ввести пароль. При попытке ввода неверного пароля программа должна выдавать сообщение (рис. 7.3) и заканчивать свою работу. Пароль установите по своему усмотрению. Для этого:

а) добавьте в проект вторую форму для ввода пароля (команды меню Project, Add Form). После запуска приложения эта форма должна иметь вид, представленный на рис.7.3;

Рис. 7.3

б) расположите на форме метку, текстовое поле и кнопку;

в) используя окно свойств, установите значения свойств объектов в соответствии с табл. 7.3.

Таблица 7.3

Объект

Свойство

Значение свойства

Форма

Name

frmParol

Текстовое поле

Name

txtParol

Text

Пусто

PasswordChar

*

Командная кнопка

Name

cmdOK

г) после запуска приложения первой должна появиться на экране добавленная форма для ввода пароля. Для этого выполните команды: меню Project, окно Project Properties на вкладке General в списке Startup Object выберите frmParol (рис. 7.4);

Рис. 7.4

д) напишите программный код процедуры, которая выполняется при щелчке по кнопке <ОК> на форме для ввода пароля. Самостоятельно заполните пропуски (...). Подумайте, почему переменная Parol объявлена как Public

Public Parol As String

Private Sub cmdOK_Click()

txtParol.PasswordChar = "*"

Parol = txtParol.Text 'Присвоение переменной Parol значения,

' введенного в текстовое поле для ввода пароля

...'Форма для ввода пароля должна выгрузиться

...'Форма Калькулятор должна загрузиться

End Sub

е) напишите программный код процедуры, которая выполняется при загрузке формы Калькулятор. В процедуре проверяется правильность ввода пароля. Если пароль неверный, программа завершает работу. Вместо пароля "Privet" установите любой собственный пароль:

Private Sub Form_Load()

If frmParol.Parol <> "Privet" Then MsgBox "Пароль невірний!!!", 16, "Помилка": End

End Sub

6. Проверьте правильность работы приложения и сохраните проект в папке ЛАБ7 с именем Лр7_Зад1.