Забудь о вере.
Тебе не нужна вера, чтобы летать,
тебе нужно понять полет.

Категории каталога

Форма входа

Приветствую Вас Гость!

Логин:
Пароль:

Поиск

Мини-чат

Наш опрос

Какие места вам больше нравятся?
Всего ответов: 58

Статистика


В сети всего: 1
Гостей: 1
Пользователей: 0
Главная » Статьи » Уроки » Visual Basic 6

Урок 6. Текст программы(часть 2)

Сначала немного теории, касаемо основных операторов.
Некоторые математические операторы были уже между делом рассмотрены в уроке 4, а именно операторы сложения(+), вычитания(-), умножения(*) и деления(/). Это наиболее часто используемые операторы. Так же стоит упомянуть такой оператор как целочисленное деление(\). В отличие от обычного деления(/) оно выдаст только целую часть. Например, при делении 10 на 6 мы получим результат 1,66666666666667, а при целочисленном делении, мы получим 1.
Так же есть оператор возведения в степень(^). Ну, думаю основные математические операторы на этом заканчиваются.

Далее строковый оператор объединения строк(&). Например если нам надо объединить две строки в одну, это будет осуществляться при помощи этой переменной, например:
S = "Привет" & "!!!"
При этом значение строковой переменной S будет "Привет!!!". Конечно понимаю, нет смысла объединять так две постоянные строки, зато вместо постоянных строк могут быть переменные, и в таком случае этот оператор потребуется.

Так же в любом языке программирования имеют место логические операторы(которые изначально применяются для работы с логическими переменными, но иногда могут быть применены и для числовых): And, Or, Not, Xor, Eqv, Imp.
Для каждого из них внизу приведена "таблица истинности" и краткое словесное описание.
Кстати, если что, привожу пример чтения таблицы истинности. Таблица истинности для оператора And будет читаться следующим образом и в следующем порядке:
True = True And True
False = True And False
False = False And True
False = False And False

Тоесть сначала смотрим на столбец, затем на строку. А внутри таблтцы видим результат

And

True

False

True

True

False

False

False

False

Конъюнкция(логическое И): Если оба значения True, то - True. Иначе - False

Or

True

False

True

True

True

False

True

False

Дизъюнкция(логическое ИЛИ): Если любой из операндов имеет значение True, то - True. Иначе - False

NOT
Отрицание: Если значение False, то - True. Иначе - False
Этот оператор применим только к одной переменной, так что читаться будет следующим образом
False = Not True
True = Not False

Xor

True

False

True

False

True

False

True

False

Исключение(логическое ИСКЛЮЧАЮЩЕЕ ИЛИ): Если А имеет значение True или В имеет значение True, то - True. Иначе - False

Eqv

True

False

True

True

False

False

False

True

Эквивалентность: Если А имеет такое же значение что и В, то - True. Иначе - False

Imp

True

False

True

True

True

False

False

True

Импликация: Если А имеет значение True и В имеет значение False, то - False. Иначе - True


Теперь обсудим некоторые стандартные функции, но не будем пока в них особо углубляться.
Как вы уже могли заметить в предыдущих уроках, функции используются чаще следующим образом

[имя переменной] = [имя функции]([переменные и/или постоянные значения вводимые в функцию])

Рассмотрим математические функции(которые кстати говоря находятся в модуле "Math"):
Sqr - функция извлечения квадратного корня. Конечно если хотите вы всегда можете возвести число в степерь 0,5, и получить тот же результат, но, если уж нам предложили для этого отдельную функцию, то порой лучше использовать её.

Abs - функция выдаёт нам абсолютное значение числа, тоесть если число отрицательное, нам возвращается положительное, и если положительное, то тоже положительное. Функция тоже достаточно простая и её достаточно просто можно написать самостоятельно, но, она уже есть, и это тоже нам пригодится.

Sin, Cos, Tan, Atn - алгебраические функции: синус, косинус, тангинс, арктангинс.


Думаю пока хватит. Если потом будут нам встречатся другие функции, будем обсуждать их по ходу дела.
А теперь, написание программы, в которой постараемся использовать максимум из ранее описанного, чтобы укрепить понимание материала.
Рассмотрим несколько программ, используемые скорее для примера чем для конкретной задачи. Сначала напишем программу, которая будет выводить нам значение при использовании какого либо из логических операторов. Я напишу пример с оператором Or, а вы сами исходя из этого, исправьте код и проверьте так же работу других операторов.

Разместим на форме 3 чекбокса и две метки(ну, метки в данном случае нужны разве что для логичности), так как показано ниже:


И введём следующий текст программы:
Private Sub Check1_Click()
Dim A As Boolean
Dim B As Boolean
A = IIf(Check1.Value, 1, 0)
B = IIf(Check2.Value, 1, 0)
Check3.Value = IIf(A Or B, 1, 0)
End Sub

Private Sub Check2_Click()
Check3.Value = IIf(IIf(Check1.Value, 1, 0) Or IIf(Check2.Value, 1, 0), 1, 0)
End Sub


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

Итак, если вы всё сделали правельно, то запустив программу и кликом изменяя значения первых двух чекбоксов, вы меняете ещё и значение 3-го, в зависимости то того какое логическое значение будет при использовании логического оператора Or.
В принцыпе, чтобы использовать другие операторы, достаточно просто заменить в тексте программы Or, на другой логический оператор.


Если с вышеописанной программой закончили, далее попробуйте самостоятельно реализовать, пожалуй снова калькулятор, как и в уроке 4, но с использованием других операторов и функций.
Если писать калькулятор полностью такого же типа как в уроке 4, то например использование функции синуса будет выглядить так:

Private Sub Command5_Click()
On Error Resume Next
Text3.Text = Sin(CDbl(Text1.Text))
End Sub


Тоесть нам потребуется для операции всего одно текстовое поле, второе может быть не использовано вообще.
Что же касается работы со строками, пожалуй это мы рассмотрим позже, при более детальной работе со стоковыми функциями.

Кстати кстати, думаю что если вы читали внимательно и выполняли что описано в уроках вы уже кое что умеете, так что, проявите творчество, попытайтесь сами написать какую нибудь программку, которая вам будет под силу. Например программу для решения какого нибудь уравнения вы можете уже создать без проблем.
Понимаю что этого мало, что хочется большего, но ничего, думаю в ближайших уроках, когда рассмотрим большенство стандартных моментов в бейсике, будем писать программы уже типа блакнота, или Paint-a.

Категория: Visual Basic 6 | Добавил: Electron (29.03.2009)
Просмотров: 1354 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]