Информатика Семестр 2 Лекция 3 Язык Visual Basic.

Презентация:



Advertisements
Похожие презентации
Объектно-ориентированный язык программирования. Переменная - эта поименованная ячейка памяти, хранящая какое-либо одно значение (одно число, один фрагмент.
Advertisements

Лекция 4 Программирование на Паскале. Элементы языка Турбо Паскаль 7.0. Типы данных. Управляющие конструкции.
Переменные задаются именами, которые определяют области памяти, в которых хранятся их значения. Значениями переменных могут быть данные различных типов.
Тип, имя и значение переменной.. Переменные. В объектно-ориентированных языках программирования, и в частности в языке Visual Basic, переменные играют.
Тема урока Переменная. Тип данных. Ввод и вывод данных.
Презентация к уроку по информатике и икт (9 класс) на тему: Презентация на тему "Основы Visual Basic"
ОБЩИЕ СВЕДЕНИЯ О ЯЗЫКЕ ПРОГРАММИРОВАНИЯ ПАСКАЛЬ НАЧАЛА ПРОГРАММИРОВАНИЯ.
Переменные и операторы УРОК 2. Переменные ПЕРЕМЕННАЯ – ?... контейнер для хранения данных. Переменная имеет имя – это….? последовательность букв, цифр.
Массивы 9 класс. Основные теоретические сведения Примеры решения задач.
Алгоритмический язык и язык Бейсик Ученицы 11-А класса ОШ 15 Бондаренко Натальи.
Date: File:System_VBSc_8.1 SIMATIC HMI Siemens AG All rights reserved. SITRAIN Training for Automation and Drives Гибкость.
Работу выполнили ученицы 9 «Б» класса Гордеева Татьяна и Шебаршова Рита.
Итак, мы научились проектировать интерфейс программы. Но для полноценной программы этого не достаточно. Нужно написать код программы, который будет манипулировать.
Синтаксис языка VBA I.Переменные II.Массивы III.Константы IV.Операции и Операторы V.Процедуры VI.Функции.
Массивы Материалы к урокам по программированию. МАССИВ это УПОРЯДОЧЕННАЯ последовательность данных ОДНОГО ТИПА. Массивы относятся к структурированным.
Строки в Pascal
Практическое занятие 6. Функции. Большинство языков программирования используют понятия функции и процедуры. C++ формально не поддерживает понятие процедуры,
VISUAL BASIC Переменные: тип, имя, значение.. Переменные: тип, имя, значение Программируем на Visual Basic Переменная – это величина, имеющая имя, тип.
Оператор ввода с клавиатуры Переменные величины. В большинстве случаев при решении задач в ходе работы программы, оператору описания необходимо менять.
План-конспект урока (информатика и икт, 9 класс) по теме: Переменные:тип, имя, значение
Транксрипт:

Информатика Семестр 2 Лекция 3 Язык Visual Basic

Гаврилов А.В. НГТУ, кафедра АППМ 2 Текст программы, который пишется в окне кода, принято называть исходным кодом или просто кодом. Он состоит из операторов, который преобразуются затем компилятором в машинные команды. Чтобы компилятор понимал исходный код, следует придерживаться определенных правил написания программ. В каждой строке помещается оператор, который может иметь дополнительные параметры. После ввода оператора и нажатия Enter автоматически проверяется правильность написания кода. Если код некорректен, то выдается сообщение об ошибке. Слишком длинные строки оператора можно разделить на несколько. Разделителем строк служит пробел и, следующий за ним символ подчеркивания (_). Строка программы в VB может содержать максимум 1023 символа. (в одной строке на экране обычно помещается 80 символов). Для выделения комментариев в VB используется символ апостроф () или оператор Rem. Число строк программного кода не должен быть больше

Гаврилов А.В. НГТУ, кафедра АППМ 3 Типы переменных Название типа Ключевое поле Размер памятиДиапазон значений Целый одинарной точностиInteger2 байтаот до ЦелыйByte1 байтот 0 до 255 Целый двойной точностиLong4 байта от до Вещественный одинарной точностиSingle4 байта8 значащих цифр Вещественный двойной точностиDouble8 байта15 значащих цифр ДенежныйCurrency8 байта15 значащих цифр Текстовый (строковый)String1 байт \ 1символДо символов ЛогическийBoolean2 байтаTrue или False Дата и времяDate8 байта УниверсвльныйVariant16 байта

Гаврилов А.В. НГТУ, кафедра АППМ 4 В VB есть два способа объявления переменных: явное и неявное. При неявном объявлении переменная просто используется в программе, однако при первом обращении к ней нужно в конец имени переменной поместить специальный символ обозначения типа. С точки зрения читаемости кода программы, этот способ менее удобен. Вы должны использовать только явное объявление типа

Гаврилов А.В. НГТУ, кафедра АППМ 5 Формат записи явного объявления переменной Dim As [, As …] Условные обозначения. Dim – оператор объявления (ключевое слово, указывающее компилятору, что объявляется переменная). – идентификатор области памяти, в которой будут храниться значения переменной. При назначении имени переменной желательно использовать специальные символы (префиксы), по которым затем в тексте программы легко определить ее тип. Обычно префикс состоит из одной буквы, который указывается перед произвольным именем переменной, написанным с прописной буквы. – одно из ключевых слов, с помощью которых задается тип переменной. При указании типа перед ним всегда следует указывать ключевое слово As. Если при объявлении переменной ее тип не указать, то по умолчанию будет использоваться ип Variant.

Гаврилов А.В. НГТУ, кафедра АППМ 6 Примеры описания переменных Dim sStroka As String Dim dMassa As Double, nIndex As Integer

Гаврилов А.В. НГТУ, кафедра АППМ 7 Глобальные, контейнерные и локальные переменные Проект Module General Declarations Public glo As Integer Dim lok As Integer Процедура Dim loc As Integer Функция Глобальная переменная Локальные переменная Локальные переменная Контейнерная переменная Form1 General Declarations Dim kon As Integer Процедура Dim loc As Integer Функция

Гаврилов А.В. НГТУ, кафедра АППМ 8 Глобальные, контейнерные и локальные переменные (2) Локальные переменные объявляются внутри процедуры или функции и доступны только в текущей процедуре или функции. Переменные контейнера определяются в разделе General Declaration окна кода. Такие переменные доступны только в текущей форме или модуле. Глобальные переменные определяются в разделе General Declaration окна кода модуля. При этом вместо оператора Dim используется оператор Public. Глобальные переменные доступны во всех модулях и процедурах проекта и могут объявляться только в модулях. В других компонентах проекта глобальные переменные объявляться не могут. Общедоступные переменные используются для обмена данными между формами и другими компонентами проекта.

Гаврилов А.В. НГТУ, кафедра АППМ 9 Константы Константы – это величины, которые при исполнении программы своего значения не меняют. При объявлении констант используется ключевое слово Const. Одновременно с объявлением константе присваивается и ее значение. В качестве значения допускается использовать только постоянные величины и их комбинации. Синтаксис объявления константы. Const [As ] = Для указания типа константы можно использовать те же ключевые слова, что и при объявлении переменных. Если тип константы в ее объявлении не указывается, то компилятор устанавливает его по значению, которое присваивается одновременно с объявлением. Для отличия строковой константы от имени переменной, строка заключается в кавычки. Например, Const Name As String = Иванов Для определения переменной типа дата, значение должно помещаться между двумя знаками решетки #. Например, Const Data1 As Date = # # Const Data1 As Date = #01:45.12#

Гаврилов А.В. НГТУ, кафедра АППМ 10 Массивы Массив – это упорядоченная последовательность переменных одного типа. Его можно представить себе как совокупность определенного числа ячеек памяти, в каждой из которых хранится свое значение одной и той же величины (элемент массива). Различают статические и динамические массивы. –Размеры статического массива устанавливаются при разработки программы, и в процессе ее исполнения изменяться не могут. –Динамические массивы могут менять свои размеры в ходе выполнения программы.

Гаврилов А.В. НГТУ, кафедра АППМ 11 Описание статического массива Формат записи объявления массива имеет вид: Dim ( To ) As Условные обозначения Имя_массива – оператор области памяти, в которой хранятся значения элементов массива. Н_граница – номер, с которого начинается отсчет элементов массива В_граница – номер, которым заканчивается отсчет элементов массива. Тип_переменной – одно из ключевых слов, с помощью которых задается тип элементов массива. Важно заметить, что индексирование массивов начинается с нуля. Примеры объявления массивов, Dim nNumber(2 To 10) As Integer Dim dMassa(10) As Double

Гаврилов А.В. НГТУ, кафедра АППМ 12 Статические массивы Существуют одномерные и многомерные массивы. При объявлении многомерных массивов верхние границы каждой размерности разделяются запятыми. Например, Dim nStudent(5,15) As Integer – двумерный массив, который содержит 75 элементов. Первый индекс – количество студенческих групп. Второй – количество студентов в группе. Пример обращения к элементу двумерного массива. nStudent(3,11) – 4 студент в 12-й группе Объявляются статические массивы только глобально или для контейнера, локально их определять нельзя.

Гаврилов А.В. НГТУ, кафедра АППМ 13 Динамические массивы В ряде случаев при объявлении массива его размер неизвестен. В этом случае используют динамические массивы. Сначала его определяют без указания размера. Dim Array() As Variant Затем в какой-либо процедуре обработки события с помощью оператора ReDim устанавливают фактический размер массива. Синтаксис оператора ReDim имеет вид: ReDim [Preserve] (Границы) As [Тип_данных]

Гаврилов А.В. НГТУ, кафедра АППМ 14 Преобразования типов Практически любая программа работает в диалоговом режиме, при котором в процессе выполнения программы от пользователя требуется задавать значения данных. Для ввода данных используется такой элемент интерфейса как текстовое поле. В нем вводимое значение представляется как строка текста, т.е. тип String. В тоже время, вводимое данное может иметь другой тип. Таким образом, возникает задача преобразования одного типа в другой. Для этого используются в VB специальные встроенные функции. С их помощью можно проверять преобразования одного типа в другой, а также производить само преобразование.

Гаврилов А.В. НГТУ, кафедра АППМ 15 Преобразования типов (2) Например, функция IsNumeric проверяет, может ли переменная быть преобразованной в число. Синтаксис этой функции IsNumeric(expression) Аргумент expression это обозначение любой переменной. Функция возвращает true, если аргумент является числовым выражением, и false, в противном случае. Функция Val возвращает число, содержащееся в строке. Синтаксис функции: Val(string).

Гаврилов А.В. НГТУ, кафедра АППМ 16 Форматирование При выводе данных на экран используют специальные встроенные функции форматирования. Они позволяют задать вид отображения данных любых типов. Имеется несколько функций форматирования. Наиболее универсальной является функция Format. Ee синтаксис Format(expression [,fmt]) Аргумент expression представляет собой форматируемое выражение. Аргумент fmt содержит название шаблона формата, определяющего вид отображаемого данного. Имеются стандартные шаблоны для форматирования чисел, даты и времени.

Гаврилов А.В. НГТУ, кафедра АППМ 17 Оператор присваивания Синтаксис оператора присваивания прост. = В правой части оператора присваивания могут содержаться не только константы, но и выражения, а также функции, возвращающие значения. При этом должно быть соблюдено условие: тип результата вычисления выражения или тип возвращаемого значения должен совпадать с типом переменной, находящейся в левой части оператора.

Гаврилов А.В. НГТУ, кафедра АППМ 18 Математические операторы VB

Гаврилов А.В. НГТУ, кафедра АППМ 19 Оператор объединения строк С его помощью можно слить (соединить) несколько строк в одну большую. Знаком объединения строк является символ амперсанта (&). Синтаксис оператора объединения строк выглядит следующим образом. = & & [ & …] Символ & отделятся от операндов пробелами. В качестве операндов могут использоваться любые строковые литеры, строковые переменные, а так же функции. Количество операндов в операторе не ограничено.

Гаврилов А.В. НГТУ, кафедра АППМ 20 Наиболее часто используемые функции работы со строками и символами Chr(ansicode) возвращает символ, соответствующий ANSI-коду, указанному в аргументе. Аргумент может быть целым числом от 0 до 255. В диапазоне от 0 до 31 расположены ANSI-символы, которые на экране не отображаются. Например: 9 перевод курсора на восемь позиций вправо (табуляция). 10 возврат курсора в начало строки. 12 перевод курсора на начало новой страницы 13 перевод курсора на новую строку (перевод каретки). Эти символы можно использовать для управления расположением текста на экране. Len(string) возвращает размер строки (количество символов в строке) Str(number) преобразует числовое выражение в строку. Аргумент number любое число. При преобразовании положительных чисел перед первой цифрой помещается пробел, перед отрицательными – символ минус. Val(string) возвращает значение числа, представленного в виде строки, для использования далее в вычислениях

Гаврилов А.В. НГТУ, кафедра АППМ 21 Логические операторы Not- логическое НЕ. Это унарный оператор, т.е. используемый с одним операндом. Результатом логического выражения с этим оператором является значение, противоположное операнду. Все остальные логические операторы VB – бинарные, т.е. используемые с двумя операндами. =больше или равно =равно не равно

Гаврилов А.В. НГТУ, кафедра АППМ 22 Логические операторы (2) Для построения более сложных логических выражений наряду с операторами сравнения используются следующие операторы. And- логическое И. Используется для логического объединения двух логических выражений. Например: nA 12. Если оба условия выполняются, то результатом всего выражения является True, в противном случае – False. Or- логическое ИЛИ. Также используется для логического объединения двух логических выражений. Например: nA 12. Если хотя бы одно из условий выполняется, то результатом всего выражения является True, в противном случае – False.

Гаврилов А.В. НГТУ, кафедра АППМ 23 Условный оператор If Then Else End If В качестве условия могут использоваться любые переменные и выражения логического типа.

Гаврилов А.В. НГТУ, кафедра АППМ 24 Оператор выбора Select Case Case Блок операторов 1 Case Блок операторов 2 ………………………………….. [ Case Else Блок операторов, выполняемых по умолчанию ] End Select Параметры и, должны иметь один и тот же тип. В секциях Case, кроме дискретных значений можно также указывать списки, диапазоны значений и операторы сравнения, в которых используется ключевое слово Is. Например: Case 1, 2, 3использование списка; Case 1, To 3использование диапазона значений; Case Is > 3использование оператора сравнения.

Гаврилов А.В. НГТУ, кафедра АППМ 25 Пример: Задание надписи на форме Select Case I Case 0 Label1="ноль" Case 1 Label1="один" Case Else Label1="больше одного" End Select

Гаврилов А.В. НГТУ, кафедра АППМ 26 Операторы цикла В Visual Basic поддерживаются две разновидности циклов: –с известным количеством итераций (с использованием счетчика); –с неизвестным количеством итераций (до выполнения определенного условия).

Гаврилов А.В. НГТУ, кафедра АППМ 27 Оператор цикла с известным количеством итераций For = To [Step ] Операторы тела цикла Next Условные обозначения: Счетчик – переменная цикла; Нчн_значение – величина, с которой начинается отсчет итераций Кнч_значение – величина, которой заканчивается отсчет итераций Приращение- величина, на которую увеличивается значение счетчика при переходе к следующей итерации. Ключевое слово Step можно не указывать. В этом случае приращение по умолчанию принимается равным единице. В качестве счетчика могут использоваться переменные любого числового типа (не только целые). Приращение может быть отрицательным. Для прерывания цикла используется оператор Exit For. Обычно он применяется совместно с оператором If, с помощью которого определяется условие досрочного завершения цикла.

Гаврилов А.В. НГТУ, кафедра АППМ 28 Операторы цикла с неизвестным количеством итераций Оператором DO While организуются циклы, которые выполняются пока некоторое условие истинно. Его синтаксис DO While Операторы тела цикла Loop Оператором DO Until организуются циклы, которые выполняются если некоторое условие ложно. Его синтаксис Синтаксис оператора DO Until DO Until Операторы цикла Loop В операторах цикла – любое выражение логического типа, значением которого может быть True или False.

Гаврилов А.В. НГТУ, кафедра АППМ 29 Операторы цикла с неизвестным количеством итераций и с постусловием(2) Do тело цикла Loop {While|Until} условие Такой цикл выполняется всегда хотя бы 1 раз

Гаврилов А.В. НГТУ, кафедра АППМ 30 Процедуры В зависимости от назначения различают процедуры обработки событий и процедуры общего назначения. Шаблон процедуры обработки событий создаются Visual Basic автоматически при двойном щелчке мыши по элементу интерфейса. Он выглядит: Private Sub ( ) End Sub В нем: Private – ключевое слово, определяющее зону видимости процедуры только внутри контейнера (формы или модуля), в котором она описана; Sub – оператор начала процедуры; – идентификатор, по которому происходит обращение к процедуре из программы. Процедуры обработки событий состоит из имени объекта и имени события, разделенных знаком подчеркивания; End Sub – оператор конца процедуры; ( ) – аргументы – величины, при помощи которых процедуре передаются необходимые ей значения. Для процедур обработки событий аргументы устанавливаются средой Visual Basic

Гаврилов А.В. НГТУ, кафедра АППМ 31 Процедуры (2) Процедуры общего назначения не связаны с каким-либо событием и их вызов программист осуществляет по своему усмотрению. Для создания такой процедуры достаточно в окне кода (но не внутри другой процедуры или функции) ввести ключевое слово Sub и имя процедуры, а затем нажать клавишу Enter. После этого Visual Basic автоматически дополнит введенный текст оператором конца процедуры End Sub и внесет имя создаваемой процедуры в список процедур окна кода для секции General, т. е. будет создан шаблон процедуры, который выглядит: Sub () End Sub Так же как и переменные, процедуры имеют различные области определения, т. е. различные возможности доступа к ним. В зависимости от области определения процедуры бывают закрытые и общедоступные.

Гаврилов А.В. НГТУ, кафедра АППМ 32 Процедуры (3) Закрытыми называются процедуры, доступные только внутри контейнера, в котором они содержатся. В Visual Basic все процедуры формы являются закрытыми и перед ключевым словом Sub всегда имеют другое ключевое слово Private. Процедуры общего назначения формы могут не иметь ключевого слова Private, но по умолчанию также являются закрытыми процедурами. Открытыми или общедоступными процедурами называются процедуры, которые могут быть вызваны из другой формы или программного модуля. Это возможно только в том случае, когда процедура содержится в модуле и в ее заголовке указано ключевое слово Public. Процедуры могут иметь аргументы – величины, значения которых используются при выполнении действий, задаваемых процедурой. При создании процедуры аргументы перечисляются через запятую в круглых скобках, следующих сразу же за именем процедуры. При этом указывается и тип аргументов. Например, Private Sub txtText1_KeyPress(KeyAscii As Integer) End Sub Здесь описан шаблон процедуры обработки события, возникающего в момент нажатия какой-либо клавиши клавиатуры, когда активно текстовое поле. Этой процедуре передается один аргумент типа Integer по имени KeyAscii. Значением аргумента является код нажатой клавиши.

Гаврилов А.В. НГТУ, кафедра АППМ 33 Процедуры (4) В процедурах обработки событий набор аргументов определяется характером события и не может быть изменен программистом. В процедурах общего назначения количество и порядок записи используемых аргументов задаются программистом, исходя из ее функционального назначения. Например, Sub Summa (Chislo1 As Double, Chislo2 As Double) Summa = Chislo1 + Chislo2 End Sub Здесь описана процедура общего назначения, содержанием которой является суммирование двух переменных по имени Chislo1 и Chislo2. Значения этих переменных задаются при обращении к этой процедуре. При вызове процедуры в программе нужно указать ее имя и, при необходимости, список аргументов. Например, Summa Chislo1, Chislo2 Аргументы, передаваемые процедурам, в скобки не заключаются. В списке аргументов один аргумент от другого отделяется запятой. Количество и последовательность аргументов, передаваемых процедуре при ее вызове, должны быть точно такими же, которые были указаны при ее определении. Кроме того, типы передаваемых аргументов должны соответствовать типам аргументов, указанных при определении процедуры.

Гаврилов А.В. НГТУ, кафедра АППМ 34 Пример Private Sub Summa() Label1.Caption = Val(Text1.Text) + Val(Text2.Text) End Sub

Гаврилов А.В. НГТУ, кафедра АППМ 35 Функции Функции во многом аналогичны процедурам и отличаются от последних тем, что возвращает в вызвавшую их программу определенное значение. Его затем можно присвоить некоторой и/или использовать для дальнейших вычислений. Общий вид записи функции в программе выглядит: [Public|Private] Function ( ) As = End Function Условные обозначения: Public, Private – необязательные ключевые слова, определяющие зону видимости функции; Function – оператор начала функции; Имя_функции –идентификатор, по которому происходит обращение к функции из программы; ( )– аргументы функции – величины, при помощи которых функции передаются необходимые ей значения; As – выражение, задающее тип возвращаемого значения; End Function– оператор конца функции.

Гаврилов А.В. НГТУ, кафедра АППМ 36 Функции (3) Важной особенностью описания функции является то, что в теле самой функции обязательно должен быть оператор присваивания возвращаемого значения имени функции. Например, Function Summa (Chislo1 As Double, Chislo2 As Double) Dim Result Result = Chislo1 + Chislo2 Summa = Result End Function В отличие от процедур при вызове функций передаваемые им аргументы, заключаются в круглые скобки. Например, Summa (Chislo1, Chislo2)

Гаврилов А.В. НГТУ, кафедра АППМ 37 Пример функции замены числа на одно из фиксированных значений Private Function Lmax(Pp As Integer) Select Case Pp Case Pp

Гаврилов А.В. НГТУ, кафедра АППМ 38 Пример проекта с циклом и процедурой Option Explicit Private Sub CMDExit_Click() End End Sub Private Sub CmdSumit_Click() Dim i Dim r For i = 1 To vsbNum.Value Step 1 r = r + i Next txtResult.Text = Str(r) End Sub Private Sub vsbNum_Change() LbLNum = "âûáðàííîå ÷èñëî: " + Str(vsbNum.Value) End Sub Private Sub vsbNum_Scroll() vsbNum_Change End Sub

Гаврилов А.В. НГТУ, кафедра АППМ 39