Тема урока: «Переменные в Visual Basic» Цель урока: разобрать понятия переменной в VBА. Тип урока: комбинированный (объяснение нового материала с последующим закреплением) Класс: 10 класс. Профильный уровень. Средства и оборудование: учебник "Информатика и информационные технологии 10класс. Профильный уровень" Н.Д. Угринович, раздаточный материал. Ход урока 1. Организационный момент. 2. Актуализация знаний учащихся. Самостоятельная работа (3 минуты) с последующей проверкой. 3. Изучение нового материала. Тип, имя и значение переменной В объектно-ориентированных языках программирования и в частности, в языке Visual Basic, переменные играют такую же важную роль, как и в алгоритмических языках программирования. Переменные предназначены для хранения и обработки данных в программах. Переменные задаются именами, которые определяют области памяти, в которых хранятся их значения. Значениями переменных могут быть данные различных типов (целые или вещественные числа, последовательности символов, логические значения и т.д.). Переменная в программе представлена именем и служит для обращения к данным определенного типа, конкретное значение которых хранится в ячейках оперативной памяти. Тип переменной. Тип переменных определяется набором допустимых значенийэтой переменной и допустимыми операциями над этими значениями. Значениями переменных числовых типов (Byte , Integer , Long , Single , Double) являются числа, логических (Boolean) – True или False , строковых (String) – последовательности символов и т.д. Обозначения типов переменных являются ключевыми словами языка и поэтому выделяются. Таблица 5.3. Типы переменных Тип данных Возможные значения Объем занимаемой памяти Приставка к Суффикс имени Byte целые числа от 0 до 255 1 байт byt Integer целые числа от -32768 до 32767 2 байта int % Long целые числа двойной длины 4 байта Ing & Single десятичные числа одинарной точности от 1.401298Е-35 ДО3.4022823Е38 4 байта sng ! Double десятичные числа двойной точности от 1.94065645841247Е-324 до 1.79769313486232Е308 8 байт dbl # Boolean логическое значение True или False 2 байта bin String строка символов 1 байт на каждый символ str $ 8 байт cur @ Currency число в денежном формате Date дата от 1 января 100 г. до 31 декабря 9999 г. 8 байт dtm Object ссылки на любой объект 4 байта obj Variant любые значения > 16 байт vnt Над различными типами данных, а следовательно, переменных, допустимы различные операции. Так над числовыми переменными возможны арифметические операции, над логическими переменными – логические операции, над строковыми – операции преобразования символьных строк и т.д. Различные типы данных требуют для своего хранения в оперативной памяти компьютера различное количество ячеек (байт). Так, для хранения целых чисел в интервале от 0 до 255 в переменных типа Byte достаточно одной ячейки памяти (одного байта), для хранения вещественного числа с двойной точностью в переменных типа Double требуется уже восемь ячеек (восемь байт), а для хранения символьных строк в переменных типа String требуется одна ячейка на каждый символ. Имя переменной. Имя каждой переменной (идентификатор) уникально и не может меняться в процессе выполнения программы. Имя переменной может состоять из различных символов (латинские и русские буквы, цифры и т.д.), но должно обязательно начинаться с буквы и не должно включать точку «.». Число символов в имени не может быть более 255. Например, числовую переменную можно назвать А или Число, а строковую – А или Строка. Однако разработчик языка Visual Basic фирма Microsoft рекомендует для большей понятности текстов программ для программиста в имена переменных включать особую приставку, которая обозначает тип переменных. Тогда, например, имена целочисленных переменных целесообразно записать как intA или intЧисло, а текстовых – strA или strCтрокa. Соглашение об именах. Имя каждой переменной уникально и не может меняться в процессе выполнения программы. Для большей прозрачности кода в среде Windows используют венгерскую нотацию, суть которой заключается в том, что имя переменной начинается с префикса, который обозначает тип переменной. Арифметические выражения. В состав арифметических выражений могут входить переменные числового типа и числа; над переменными и числами могут производиться различные арифметические и математические операции. 1. A=23*B-(45+F)^2/5 2. S=S+1 3. B=(A+Cos (X))/N Строковые выражения. В состав строковых выражений могут входить переменные строкового типа, строки и строковые функции. 1. strA ="ИНН"& vntНомер 2. strC ="град"& "ус"& strЗнак 3. strФИО= Mid(strF,2,6) & "." Логические выражения. В состав логических выражений кроме логических переменных могут входить также числа, числовые или строковые переменные или выражения, которые сравниваются между собой с использованием операций сравнения (>, <, =, >=, <= и т.д.) Логическое выражение может принимать только два значения: «истина» или «ложь». Над элементами логических выражений могут производиться логические операции, которые на языке Visual Basic обозначаются следующим образом: логическое умножение – And, логическое сложение – Or и логическое отрицание Not. При записи сложных логических выражений часто используются скобки. (5 > 3) And (2*2 = 5) - условие ложно; (5 > 3) Or (2*2 = 5) - условие истинно. Переменные типа Variant имеют большое практическое значение, однако при их применении возникают проблемы. Во-первых, при чтении кода не видно, какой внутренний тип имеет переменная в данный момент. Это может крайне затруднить обнаружение логических ошибок программирования. Во-вторых, данные этого типа из-за частых внутренних преобразований занимают больше памяти, чем аналогичные данные, объявленные с указанием явного типа. Объявление переменных. Важно, чтобы не только разработчик программы понимал, переменные какого типа используются в программе, но это мог учесть и исполнитель программы (компьютер). Второе даже более важно, так как, если компьютер не будет знать, переменная какого типа используется в программе, он будет считать е переменной универсального типа Variant и отведет для ее хранения 16 или более ячеек (байт). Это будет приводить к неэффективному использованию памяти и замедлению работы программы. Для объявления типа переменной можно воспользоваться оператором определения переменной. 1. Объявление переменных Переменной: Примеры объявления переменных 1. Переменная денежного типа: Dim cur Налог AS Currency 2. Dim ИмяПеременной [ AS тип] 2. Массив строкового типа: 3. Массива: Dim ИмяМассива(Размерность) [ AS тип] Dim str Имя(10) AS String 3. Константа целого типа: 4. Константы: Const ИмяКонстанты [ AS тип]=Значение Const byt Шаг AS Byte =12 4. Универсальная переменная: Dim vnt Номер AS Variant или Dim vnt Номер 4. Закрепление изученного материала Практическое задание «Проект «Переменные»» Создать проект, в котором объявить переменные различных типов, присвоить им значение и вывести значения в поле списка, размещенное на форме. Этапы создания проекта: 1. Создание графического интерфейса 2. Создание событийной процедуры 3.Компиляция и запуск проекта на выполнение 4. Анализ и оптимизация программы Элементы управления ListBox (список) Добавляет строки в список во время проектирования. Для этой цели используются методы AddItem (добавить элемент), RemoveItem (удалить элемент) и Clear (очистить). ListBox1.Items.Add(A) Public Class Form1 Dim A As Byte, B As Short, C As Single, D As String, G As Boolean Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click A = 255 B = -32768 C = 3.14 D = "информатика" G = True ListBox1.Items.Add(A) ListBox1.Items.Add(B) ListBox1.Items.Add(C) ListBox1.Items.Add(D) ListBox1.Items.Add(G) End Sub End Class Создать новый проект. Для создания графического интерфейса разместить на форме (frml) управляющий элемент командная кнопка (button1). В качестве аргументов программы пусть выступают две целочисленные переменные intA и intB, а в качестве результатов неотрицательная целочисленная переменная byte, вещественная переменная одинарной точности sngD и вещественная переменная двойной точности dblE. 2. Объявить переменные для их использования в программе: Dim intA, intB As Integer, bytC As Byte, sngD As Single, dblE As Double 3. Произвести двойной щелчок по кнопке cmdl, в окне Программный код появится заготовка событийной процедуры: Sub cmdl_Click() End Sub Теперь необходимо разработать программный модуль, реализующий следующий алгоритм деления двух чисел: 1. Присвоить аргументам алгоритма, переменным intA и intB конкретные значения. 2. Присвоить каждой из переменных bytC, sngD и dblE результат деления аргументов. 3. Напечатать результаты (значения переменных) на форме. Реализацию первых двух инструкций (команд) алгоритма произведем с помощью операторов присваивания. В качестве исходных чисел возьмем целые числа 2 и 3. Печать результатов алгоритма осуществим с помощью метода Print, которым обладает объект frml. Метод Print используется для печати на форме чисел и строк, а также значений числовых и строковых переменных или выражений, которые образуют список печати. В качестве разделителей списка печати используется либо запятая, либо точка с запятой. В первом случае элементы списка печатаются каждый в своей зоне (каждая зона имеет длину 14 символов), во втором случае элементы списка печатаются вплотную друг к другу. В случае отсутствия списка печати на форму выводится пустая строка. Синтаксис метода Print следующий: Объект.Print [СписокПечати] Public Class Form1 Dim intA, intB As Integer, bytC As Byte, sngD As Single, dblE As Double Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click intA = 2 intB = 3 bytC = intA / intB sngD = intA / intB dblE = intA / intB Print(bytC, sngD, dblE) End Sub End Class Для логических переменных Dim blnА, blnВ, blnС As Boolean Sub button3_Click() blnА = 5 > 3 blnВ = 2*2 = 5 blnС =blnА And blnВ Print blnС End Sub 5. Подведение итогов урока 6. Домашнее задание Приложение Visual Basic. Переменные и константы. Объявление переменных. Типы данных. Переменные переменные Длина имени Правила Суффиксы хранят… переменной… составлении предназначены Имени для… переменной Тип переменной Типы переменных Значение переменной Константы