Автор работы: Пользователь скрыл имя, 01 Июня 2013 в 20:12, курс лекций
Программированию предшествует важнейший этап - постановка задачи. Постановка задачи может включать широкий спектр вопросов (разработка математических и физических моделей, вывод расчетных формул и т. п.). Программист должен четко представлять явление или формулу, которые он алгоритмизирует.
Процесс программирования начинается, как правило, с составления алгоритма. Составление алгоритма заключается в логическом описании процесса решения задачи и требует знания элементов математической логики. Таким образом, алгоритм – это последовательности операций, описывающих процесс решения задачи.
Функция(Аргумент или Выражение)
Функция |
Возвращаемое значение |
Функция |
Возвращаемое значение |
Abs |
Модуль (абсолютная величина) числа |
Sgn |
Знак числа |
Atn |
Арктангенс |
Sin |
Синус |
Cos |
Косинус |
Sqr |
Квадратный корень числа |
Ехр |
Экспонента |
Tan |
Тангенс |
Log |
Натуральный логарифм |
Fix |
Целая часть числа |
Rnd |
Случайное число в интервале [0,1) |
Int |
Целая часть числа. |
Если число меньше нуля, то Rnd возвращает каждый раз одно и то же число. Если число больше нуля или опущено, то Rnd возвращает следующее случайное число в последовательности. Если число равняется нулю, то Rnd возвращает случайное число, возвращенное при предыдущем вызове этой функции. Для изменения чисел в последовательности перед вызовом функции Rnd используйте инструкцию Randomize. Примеры.
Dim MyVal
Randomize ' инициализация генератора случайных чисел
MyVal = Int((6 * Rnd) + 1) 'генерируется случайное число от 1 до 6
MyVal = Sqr(4) ' получаем 2.
MyVal = Sqr(-4) 'генерируется ошибка времени выполнения
Различие между функциями int и Fix состоит в том, что для отрицательного значения параметра число функция int возвращает ближайшее отрицательное целое число, меньшее либо равное указанному, a Fix - ближайшее отрицательное целое число, большее либо равное указанному.
Функция |
Тип аргумента |
Функция |
Значение аргумента |
IsArray |
массив |
IsEmpty |
переменная не инициирована |
IsDate |
дата |
isNull |
пустое значение |
IsObject |
объект |
isNumeric |
числовое значение |
isError |
код ошибки |
Примеры.
Dim MyDate, YourDate, NoDate, MyCheck
MyDate = "February 12, 1969"
YourDate = #2/12/69#: NoDate = "Hello"
MyCheck = IsDate(MyDate) ' получаем True
MyCheck = IsDate(YourDate) ' получаем True
MyCheck = IsDate(NoDate) ' получаем False
Dim MyInt As Integer, YObj, MyCheck
Dim MyObj As Object
Set YObj = MyObj ' назначаем объекту ссылку на другой объект
MyCheck = IsObject(YObj) ' получаем True.
MyCheck = IsObject(MyInt) ' получаем False.
Функция Format возвращает значение типа Variant (string), содержащее выражение, отформатированное согласно инструкциям, заданным в описании формата. Синтаксис:
Format(Выражение[,Формат [,ПервыйДеньНедели [,ПерваяНеделяГода]]])
где
Выражение - любое допустимое выражение;
Формат - инструкция форматирования.
ПервыйДеньНедели и ПерваяНеделяГода — используются при задании формата даты.
Инструкция |
Возвращает |
General Number |
число в общем формате без разделителя тысяч. |
Currency |
число в денежном формате согласно установкам Windows. |
Fixed |
число с фиксацией двух цифр в дробной части числа и одной в целой. |
Standard |
число в стандартном формате – фиксированный с разделителем тысяч. |
Percent |
число в фиксированном формате со знаком "процент". |
Scientific |
число с плавающей десятичной точкой (экспоненциальный). |
Yes/No |
No, если число равно 0, и Yes - в противном случае. |
True/False |
False, если число равно 0, и True - в противном случае. |
On/Off |
Off, если число равно 0, и On - в противном случае. |
0 (нуль) - отображает цифру или нуль.
# (решетка) - отображает цифру или ничего.
. (точка) - отображает десятичный разделитель числа.
% (процент) - отображает символ процента после числа.
, (запятая) - отображает разделитель тысячных частей в целой части числа.
: (двоеточие) - отображает разделитель часов, минут и секунд в формате времени.
/ (слеш) - отображает разделитель дня, месяца и года в формате даты.
Е+, Е- или е+, е- - отображает разделитель мантиссы и порядка в экспоненциальном формате например Format(1.22,"##.##е+##") выводит 1.22е+00.
Примеры:
MyStr = Format(1.2,"00.00") выводит 01.20.
MyStr = Format(1.2,"#.##") выводит 1.2
MyStr = Format(5459.4, "##,##0.00") ' выводит "5,459.40".
MyStr = Format(334.9, "###0.00") ' выводит "334.90".
MyStr = Format(5, "0.00%") ' выводит "500.00%".
Инструкция |
Возвращает |
General Date |
дату или время. Если нет дробной части, то выводит только дату. |
Long Date |
дату в соответствии с длинным форматом Windows для даты. |
Medium Date |
дату в соответствии с средним форматом Windows для даты. |
Short Date |
дату в соответствии с коротким форматом Windows для даты. |
Long Time |
часы, минуты и секунды. |
Medium Time |
часы и минуты в 12-часовом формате. |
Short Time |
часы и минуты в 24-часовом формате. |
Val(строка) Возвращает число, содержащееся в строке.
Str(число) Возвращает строковое представление числа, тип Variant (string). В качестве допустимого десятичного разделителя функция str воспринимает только точку, иначе используйте функцию cstr.
Функция |
Возвращает тип |
Функция |
Возвращает тип |
СВооl |
Boolean |
Cint |
Integer |
Cbyte |
Byte |
CLng |
Long |
Ccur |
Currency |
CSng |
Single |
Cdate |
Date |
CVar |
Variant |
CDbl |
Double |
CStr |
String |
Cdec |
Decimel |
Примеры.
Dim MyDbl, MyStr, MyByte
MyDbl = 137.8
MyStr = CStr(MyDbl) ' получаем "137.8"
MyByte = CByte(MyDbl) ' получаем 138
Функция |
Возвращает |
Asc |
ASCII код начальной буквы строки. Синтаксис: Asc(строка) |
Chr |
символ ASCII кода. Синтаксис: Chr(байт). Например: Chr(99) - буква "с". |
LСase |
строку в нижнем регистре. Синтаксис: LCase(строка) |
UСase |
строку в верхнем регистре. Синтаксис: UCase(строка) |
Left |
подстроку исходной
строки. Синтаксис: Left(строка, |
Right |
подстроку исходной
строки. Синтаксис: Right(строка, |
Mid |
подстроку строки.
Синтаксис: Mid(Строка, |
Lеn |
число символов строки. Синтаксис: Len(Строка) |
Trim |
строку без пробелов в ее начале и конце. Синтаксис: Trim(Строка) |
Space |
строку, состоящую из пробелов. Синтаксис: Space(числоПробелов) |
StrReverse |
строку в обратном порядке. Синтаксис: StrReverse(string) |
InStr, InStrRev |
позиции первого и последнего вхождения строки2 внутри строки1. Синтаксис: InStr([НачалоПоиска,]строка1, InStrRev(строка1,строка2,[ НачалоПоиска по умолчанию 1. |
Replace |
строку, для которой в строке1 заменена подстрока1 на подстроку2. Синтаксис: Replace(строка1,подстрока1, НачалоПоиска по умолчанию 1. ЧислоЗамен по умолчанию – все. |
Примеры.
Dim str, UCaseStr, RevStr, LStr
str = "Hello World"
UCaseStr = UCase(str) ' получаем "HELLO WORLD"
RevStr =StrReverse(str) ' получаем "dlroW olleH"
LStr = Left(str,Len(str)\2) ' получаем "Hello"
Константа |
Chr(Код) |
Клавиша |
VbBack |
Chr(8) |
Backspace |
VbTab |
Chr(9) |
Tab |
VbChr |
Сhr(13) |
Enter |
Функция |
Возвращает |
Date |
текущую системную дату, тип Variant (Date) |
Time |
текущее системное время, тип Variant (Date) |
Now |
текущую системную дату и время, тип Variant (Date), |
Hour, Minute, Second |
целые числа - часы, минуты и секунды, тип Variant (integer). Синтаксис: Hour(Время), Minute(Время), Second(Время). Например: час=Hour(Now), Минута = Minute(Now), Секунда = Second(Now) |
Day, Month, Year |
целые числа - день, месяц, год, тип Variant (integer). Синтаксис: Day(Дата), Month(Дата), Year(Дата). Например: День=Day(Now), Месяц=Month(Now), Год=Year(Now) |
Weekday |
целое число - день недели. Синтаксис: Weekday(Дата,[ ПервыйДеньНедели по умолчанию - vbSunday (воскресенье). Допустимы: vbMonday, VbTuesday, VbWednesday, vbThursday, VbFriday, VbSaturday. |
Timer |
число секунд, прошедших после полуночи, тип Single. |
DateDiff |
количество временных интервалов между двумя датами, тип Long. Синтаксис: DateDiff(Интервал,Дата1,Дата2 [,ПервыйДеньНедели[, Интервал - тип временного интервала. Допустимые значения: уууу - Год, q - Квартал, m - Месяц, ww - Неделя, h - Часы, m - Минуты, s -Секунды; , у - День года d - День месяца, w - День недели, Например: Лет = DateDiff("yyyy", #4/7/57#, Now) |
DatePart |
указанную компоненту даты, тип Variant (integer). Синтаксис: DatePart(Интервал, Дата [, ПервыйДеньНедели [, ПерваяНеделяГода]]) |
DateAdd |
дату, к которой добавлено (убавлено) Число временных интервалов, тип Variant (Date). Синтаксис: DateAdd(Интервал,Число,Дата). |
TimeSerial |
время, тип Variant (Date). Синтаксис: TimeSerial(Час,Минута,Секунда) |
DateSerial |
дату, тип Variant (Date). Синтаксис: DateSerial(Год,Месяц,День) |
TimeValue |
Преобразует строку в формат времени. |
Примеры.
Dim Today, dateNow, timeNow, dayNow, monthNow
Today = Now ' получаем 14.01.2006 2:44:23
dateNow = Date ' получаем 14.01.2006
timeNow = Time ' получаем 2:44:23
dayNow = day(Today) ' получаем 14
monthNow = month(Today) ' получаем 1 – типы данных -Variant
В функции выбора значения всех выражений вычисляются всегда, независимо от значения логического выражения (условия).
Функция |
Возвращает |
IIf |
Значение выражения1 если ЛогическоеВыражение=True, иначе выражения2. Синтаксис: IIf(Условие, Выражение1, Выражение2) |
Choose |
значение выражения по номеру. Номер не должен превышать число выражений. Синтаксис: Choose(Номер, Выражение1 [,Выражение2] ... ) |
Switch |
значение, соответствующее
первому истинному выражению
в списке. Синтаксис: Switch(Условие1,Выражение1[, |
Следующие функции возвращают значения типа string, если к имени функции добавляется символ доллара "$", иначе - тип variant.
Chr$ |
Format$ |
LTrim$ |
Str$ |
CurDir$ |
Input$ |
Mid$ |
String$ |
Date$ |
InputB$ |
Right$ |
Time$ |
Dir$ |
Lcase$ |
RTrim$ |
Trim$ |
Error$ |
Left$ |
Space$ |
Ucase$ |
Инструкция Visual Basic представляет собой полную команду языка Visual Basic. Она может содержать ключевые слова, операторы, переменные, константы и выражения.
Оператор присвоения присваивает значение выражения переменной, константе или свойству объекта. Оператор присвоения всегда включает знак равенства (=).
Синтаксис: [Let] Переменная = Выражение
Инструкция Let необязательна и чаще всего опускается.
Для присвоения переменной типа ссылки на объект применяется инструкция Set. Синтаксис:
Set Объект = {[New] ИмяОбъекта | Nothing}
где ключевое слово New используется при создании нового объекта, а ключевое слово Nothing – при удалении объекта, чтобы освободить память, выделенную для объекта.
Операторы управления ходом выполнения программы функционально делятся на две группы:
В операторах управления выполняются только те инструкции, которым передается управление.
Оператор условного перехода задает выполнение определенных групп инструкций в зависимости от значения выражения. Синтаксис: