- •Мпс россии
- •Оглавление
- •1.Общие сведения для начинающего программиста
- •1.1. Компьютеры и программы
- •1.2. Программные приложения
- •1.3. Программа и алгоритм
- •1.4. Visual Basic – популярный язык программирования.
- •2. Проектирование Windows-приложения
- •2.1. Экранная форма, программный модуль, программный проект
- •2.2. Этапы создания приложения
- •2.2.1. Начальный этап проектирования - постановка задачи
- •2.2.2. Разработка интерфейса
- •2.2.3. Программирование
- •2.2.4 Заключительный этап проектирования
- •3. Основные конструкции языка программирования Visual Basic
- •3.1. Алфавит
- •3.2. Данные
- •3.2.1. Переменная
- •3.2.2. Константы
- •3.3. Оператор присваивания
- •3.4. Выражения и функции
- •3.4.2. Функции
- •3.4.3. Финансовые функции
- •3.5. Операторы условного и безусловного переходов
- •3.6. Операторы программирования повторений
- •3.6.1. Цикл со счетчиком
- •3.6.2. Вложенные циклы
- •3.6.3. Цикл с условием
- •4. Пример проектирования Windows-приложений Решение некоторых финансовых операций
- •Комментарии к работе приложения
- •Литература
- •Часть 1
3.4. Выражения и функции
Выражения
Арифметическое выражение - это последовательность чисел, констант, переменных, функций и арифметических выражений, заключённых в круглые скобки, которые соединены между собой знаками арифметических операций.
Значения арифметических выражений вычисляются по правилам, которые являются общеизвестными, и мы не будем на них подробно останавливаться. Приведём лишь таблицу арифметических операций, используемых в языке Visuа1 Ваsiс. Таких операций восемь (табл. 3.3).
Таблица 3.3
-
Операция
Описание операции
A ^ B
Возведение А в степень В
-A
Перемена знака А
A*B
Умножение А на В
A / B
Деление А на В
A \ B
Целочисленное деление А на В
A mod B
Деление по модулю А на В
A + B
Сложение А с В
A - B
Вычитание В из А
Эти операции наверняка хорошо Вам знакомы и не требуют пояснений. Приведём примеры:
(3 + 2)/(6 - 4); значение выражения равно 2.5;
-3 * (-3); значение выражения равно 9;
2^2 + 1; значение выражения равно 5.
Возможно, что для вас исключение составляют операции целочисленного деления и деления по модулю: \ и Моd. Смысл этих операций заключается в следующем.
Результатом целочисленного деления одного числа на другое является целая часть их отношения, например: значение выражения 34 \ 5 равно 6.
Результатом деления по модулю одного числа на другое является дробная часть их отношения, например: значение выражения 34 Моd 5 равно 4.
Cтроковые выражения – это последовательность строк, связанных между собой с помощью логических операций и функций.
Строка - это значение переменной типа String.
Строка - это либо упорядоченная последовательность символов, либо пустая строка. Для обозначения строки используются кавычки:
« » - обозначение пустой строки;
«Иван» - пример непустой строки.
Между кавычками в обозначении пустой строки пробел ставить нельзя, так как пробел - это тоже символ.
Число символов строки называется длиной строки. Длина пустой строки равна нулю.
Каждый символ строки имеет свою позицию - порядковый номер при счёте слева направо.
Например, символ И в строке «Иван» имеет позицию 1, а символ н - позицию 4.
В Бейсике используется понятие подстроки. Строго определять его мы не будем, ограничимся примерами:
«Иван» - это подстрока строки «Иванов»;
«+1» - это подстрока строки «Число+100»;
«01» не является подстрокой строки «Число+100».
(Сможете ли вы сами по этим примерам определить понятие подстроки?)
Подстрока S1 строки S называется левой подстрокой, если их первые символы совпадают («Иван» - левая подстрока строки «Иванов»).
Подстрока S1 строки S называется правой подстрокой, если их последние символы совпадают («ов» - правая подстрока строки «Иванов»).
Конкатенацией двух строк S1 и S2 называется такая строка S, для которой S1 и S2 - это левая и правая подстроки, а длина S равна сумме длин S1 и S2, например:
«12345678» - это конкатенация строк «12345» и «678».
Знак конкатенации в Visual Basic - это знак +. Но не надо путать конкатенацию строк со сложением чисел в арифметических выражениях, хотя знак используется один и тот же!
В языке Visual Basic применяется ещё один знак конкатенации: & (амперсанд). С его помощью можно подвергнуть конкатенации не только строки, но и числа. При этом числа будут сначала преобразованы в строки (обрамлены кавычками). И результат тоже будет строкой.
Пример 3.9
Код 3.9 демонстрирует конкатенацию строк и чисел с помощью знака &:
Код 3.9
Dim Строка 1 Аs String, Строка2 Аs String, _
Результат Аs String
Строка 1 = «Объём комнаты»
Строка2 = « куб. метров»
Результат = Строка1 & 2.5 * 3 * 5 & Строка2
После выполнения этого кода значением переменной результат будет строка «Объём комнаты 37.5 куб. метров».
А теперь представим некоторые наиболее распространённые функции, которые имеют дело со строками — либо обрабатывают их, либо возвращают их в качестве своих значений.
Аргументы в определениях функций будем записывать с суффиксами для указания их типа.
Функция определения длины строки. Синтаксис функции:
Len (Строка$)
Функция возвращает длину Строки$.
Например:
Len («Иван» + «Иванович») возвращает 12;
Lеn («Иван» + « » + «Иванович») возвращает 13;
Lеn (900 & «-» & 4567) возвращает 8.
Функции выделения подстроки. Таких функций три:
Мid ( Строка$, Позиция& [, Длина&] )
В Строке$ выделяется подстрока начиная с заданой Позиции&. Длину& выделяемой подстроки можно не указывать, тогда будет возвращена подстрока от данной Позиции& до конца Строки$.
Например:
Мid («Иван Иванович», 6) возвращает «Иванович»;
Мid («Иван Иванович», 6, 2) возвращает «Ив».
Left (Строка$, Длина&)
В Строке$ выделяется левая подстрока Длиной&. Она и будет возвращаемым значением.
Например:
Left («Иван Иванович», 4) возвращает «Иван»
Right (Строка$, Длина&).
В Строке$ выделяется правая подстрока Длиной&. Она и будет возвращаемым значением.
Например:
Right («Иван Иванович», 8) возвращает «Иванович».
Функция поиска подстроки. Синтаксис функции:
InStr ([Старт&,] Строка$, Подстрока$)
В Строке$ ищется то место, где находится Подстрока$. Возвращается позиция первого символа Подстроки$. Если Подстрока$ не найдена, возвращается 0.
Старт& — необязательный аргумент — номер той позиции, с которой начинается поиск. Например:
InStr («Иван Иванович», «Иван») возвращает 1;
InStr («Иван Иванович», «Пётр») возвращает 0;
InStr (1, «Иван Иванович», «Иван») возвращает 1;
InStr (2, «Иван Иванович», «Иван») возвращает 6.
Функции преобразования предназначены для преобразования данных из одного типа в другой.
Таких функций в Visul Basic довольно много. Например, целый ряд функций призван превращать строки в различные числовые и нечисловые типы. Рассмотрим только четыре функции этого вида.
Val (Строка$)
Эта функция преобразует Строку в число.
Например:
Val («2.5») возвращает 2.5.
Данная функция часто применяется для преобразования строк, вводимых пользователем через Окна ввода или текстовые поля экранной формы, в числа, которые затем используются в вычислениях.
Str (Число) - эта функция преобразовывает Число любого типа в строку.
Например:
Str (5.E+25) возвращает «5Е+25»
Данная функция часто применяется для преобразования чисел, которые получаются в результате производимых программой вычислений, в строки, помещаемые в текстовые поля экранной формы или Окна сообщений.