Программирование и алгоритмизация

Автор работы: Пользователь скрыл имя, 01 Июня 2013 в 20:12, курс лекций

Краткое описание

Программированию предшествует важнейший этап - постановка задачи. Постановка задачи может включать широкий спектр вопросов (разработка математических и физических моделей, вывод расчетных формул и т. п.). Программист должен четко представлять явление или формулу, которые он алгоритмизирует.
Процесс программирования начинается, как правило, с составления алгоритма. Составление алгоритма заключается в логическом описании процесса решения задачи и требует знания элементов математической логики. Таким образом, алгоритм – это последовательности операций, описывающих процесс решения задачи.

Прикрепленные файлы: 1 файл

VB-алгоритмизация и программирование.doc

— 4.97 Мб (Скачать документ)

Функция(Аргумент или Выражение)

Математические  функции

Функция

Возвращаемое  значение

Функция

Возвращаемое  значение

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

Функция 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,строка2[,Критерий]) – первое вхождение

InStrRev(строка1,строка2,[НачалоПоиска],[ Критерий]) – последнее вхождение

НачалоПоиска  по умолчанию 1.

Replace

строку, для  которой в строке1 заменена подстрока1 на подстроку2.

Синтаксис: Replace(строка1,подстрока1,подстрока2 [,НачалоПоиска[,ЧислоЗамен[,Критерий]]])

НачалоПоиска  по умолчанию 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"

Константы Visual Basic для управляющих ASCII кодов

Константа

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[,Условие2,Выражение2]…)


 

Функции, возвращающие строки

Следующие функции  возвращают значения типа 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 представляет собой полную команду  языка Visual Basic. Она может содержать  ключевые слова, операторы, переменные, константы и выражения.

Оператор присвоения

Оператор присвоения присваивает значение выражения  переменной, константе или свойству объекта. Оператор присвоения всегда включает знак равенства (=).

Синтаксис: [Let] Переменная = Выражение

Инструкция Let необязательна и чаще всего опускается.

Для присвоения переменной типа ссылки на объект применяется  инструкция Set. Синтаксис:

Set Объект = {[New] ИмяОбъекта | Nothing}

где ключевое слово New используется при создании нового объекта, а ключевое слово Nothing –  при удалении объекта, чтобы освободить память, выделенную для объекта.

Операторы управления

Операторы управления ходом выполнения программы функционально  делятся на две группы:

  • перехода и выбора: GоTо, If - Then – Else, Select Case;
  • повтора For - Next, For Each - Next, Do – Loop, While - Wend.

В операторах управления выполняются только те инструкции, которым передается управление.

Оператор условного  перехода

Оператор условного  перехода задает выполнение определенных групп инструкций в зависимости от значения выражения. Синтаксис:

Информация о работе Программирование и алгоритмизация