Урок 2 по теме «VBA» (СПО, Математические операторы в программировании)

7
0
Материал опубликован 24 November 2017

Пояснительная записка к презентации


презентация по теме
PPTX / 171.57 Кб

практическое задание урока
DOCX / 14.84 Кб

Карточки-задания
DOCX / 18.93 Кб

Математические операторы в программировании.

Математические функции и операторы

Функция Sqr (число) – возвращает квадратный корень числа, например: Sqr(4) возвращает 2

Функция Sqn (число) – определяет положительное число, отрицательное или равно нулю, если число отрицательное будет возвращено значение «-1», при положительном числе будет возвращено значение «1», если число ноль, то и значение будет возвращено как ноль.

Примеры:

Sqn(-66) –возвращает «-1»

Sqn(75) – возвращает «1»

Sqn(0) – возвращает «0»

Round (число [,число знаков после запятой])

Функция служит для округления чисел до заданной точности (число значащих цифр в дробной части).

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

В результате действия функции возвращается округленное число

Пример:

Dim b as double

C= 123,1234568

B= Round (c, 2) возвращает 123,12

B= Round (c, 4) возвращает 123,1234

Если не указать число значащих цифр дробная часть будет отброшена

B= Round (c) возвращает 123

Rnd[ (Number)]

Функция Rnd (Random) служит для генерации случайных чисел.

Возвращаемое значение: Функция Rnd возвращает значение в диапазоне от 0 до, содержащее случайное число (причем 1 не входит в этот диапазон, а 0 входит). Строго говоря, функция возвращает псевдослучайные числа. При каждом запуске программы, функция генерирует одну и ту же последовательность случайных чисел. Во избежание этого явления используйте инструкцию Randomize

Примечание:

Чтобы получить значения случайных чисел в интервале от min до max используйте формулу:

Int ( (max — min + 1) * Rnd + min), где min и max-минимальное и максимальное число соответственно

Пример:

Генерируем случайные числа от 1 до 7

Dim slchislo

slchislo = Int ( (9 * Rnd) + 1)

IsNumeric (Expression)  

Функция IsNumeric проверяет, является ли значение данного выражения числом. Возвращает значение типа Boolean, показывающее, имеет ли выражение числовое значение.

Функция IsNumeric возвращает True, если выражение имеет числовое значение; в противном случае возвращается False.

IsNumeric возвращает False, если выражение является выражением даты

Пример:

Проверим, имеет ли переменная значение, которое может  интерпретироваться как числовое

Dim provstr, rez

provstr = “53“   ' присваиваем значение

 rez = IsNumeric (MyVar) ' возвращает True

provstr = “45 Help» ' присваиваем значение

 rez = IsNumeric (MyVar) ' возвращает Falsе

Abs (Number) 
Функция Abs (Absolute) служит для вычисления абсолютного значения (модуля) числа

Пример

Dim A,B 
A=Abs (60.5) ' возвращается 60.5 
B=Abs (-99.10) ' возвращается 99.10

Математические операторы

Сочетание клавиш

Выполняемые действия

Пример

+

+ на цифровой клав., Shift+ «=» на алфавитно-цифровой

сложение

Sum= a+b

A=2

B=5

Sum=7

-

- на клавиатуре

вычитание

Razn=b-f

B=20

F=15

Razn=5

/

Знак деления на цифровой клавиатуре

деление

Delen= f/g

F=15

G=2

Delen=7.5

\

\ на алфавитно- цифровой клавиатуре

Целочисленное деление

Celdel=h\k

H=15

G=2

Celdel=7

*

х на цифровой клавиатуре

умножение

Proizv=b*n

B=5

N=25

Proizv=125

^

Shift+6 на алфавитно-цифровой клавиатуре при английской раскладке

Возведение в степень

Stepen=n^3

N=6

Stepen=216

Типы данных

Тип данных

Описание и диапазон значения

Byte

Хранение положительных чисел от 0 до 255

Boolean

Хранение логических значений: True, False

Currency

Хранение чисел для точных вычислений в диапазоне
от -922337203685477,5808 до 922337203685477,5807

Date

Хранение даты и времени.
Даты от 1.01.100 до 31.12.9999
Время от 00:00:00 до 23:59:59

Double

Хранение чисел двойной точности
от -1,79769313486232*10308 до -4,94065645841247*10-324
от 4,94065645841247*10-324 до 1,79769313486232*10308

Integer

Хранение целых чисел от -32768 до 32767

Long

Хранение целых чисел от -2147483648 до 2147483647

Single

Хранение чисел одинарной точности
от -3,402823*1038 до -1,401298*10-45
от 1,401298*10-45 до 3,402823*1038

String

Хранение текста длиной до 2 млрд. символов

Variant

Хранение любого типа данных


 

Тип Date

VBA использует тип Date для хранения дат и времени.

При работе с этим типом данных следует иметь ввиду, что VBA-типы Date не являются такими же типами, как в рабочих листах Excel, хотя во многом и схожи с ними. Например, базовой датой для VBA-типа Date является 30 декабря 1899 года, а в Excel - 1 января 1900 года.

VBA-тип Date является типом последовательных дат. VBA использует отрицательные числа для представления дат ранее базовой даты (30 декабря 1899), и положительные - для дат после базовой. Число 0 представляет саму дату 30.12.1899.

В значении последовательной даты целая часть - это общее число дней от базовой даты. Дробная часть (цифра справа от десятичного знака) - эти цифры обозначают время дня как часть дня. Один час - это 1/24 дня, одна минута - 1/1440 дня, секунда - 1/86400 дня.

Можно вычитать одну дату из другой, добавлять к дате или вычитать числа для изменения ее значения. В VBA имеется несколько встроенных процедур для отдельного извлечения года, месяца, дня, часов, минут и секунд переменной типа Date.





Числа

VBA имеет шесть различных численных типов данных: Byte, Integer, Long, Single, Double, Currency.

Они используются для хранения чисел в различных форматах, в зависимости от конкретного типа.

Целые числа

Integer - это целое число без дробной части (целые числа никогда не содержат десятичного знака, даже если десятичная часть равна нулю).

VBA предоставляет три типа целых данных: Byte, Integer, Long.

Byte - наименьший из трех типов целых данных, предназначен для хранения числе от 0 до 255. Этот тип обычно используют для хранения двоичных данных.

Integer использует диапазон целых чисел от -32768 до 32767.

Long использует диапазон целых чисел от -2147483648 до 2147483647.

Byte, Integer, Long типы требуют меньше памяти для хранения чисел, чем другие численные типы данных VBA, а математические операции и операции сравнения над числами указанных типов быстрее, чем эти же операции для численных типов данных с плавающей точкой.

VBA автоматически преобразует данные типов Byte, Integer, Long в текст, когда они выводятся на экран, используя такие процедуры, как MsgBox.

Числа с плавающей точкой

Числа с плавающей точкой могут иметь любое число цифр до или после десятичной точки (в пределах границ конкретного типа данных). Иногда их называют действительными числами. Этот тип данных используют тогда, когда требуется хранить числа, имеющие дробную часть.

VBA имеет два типа данных с плавающей точкой: Single, Double.

Single используется для хранения:
отрицательных чисел от -3,402823*1038 до -1,401298*10-45
и положительных от 1,401298*10-45 до 3,402823*1038.
Числа, хранимые с использованием типа Single, называются числами одинарной точности.

Double используется для хранения:
отрицательных чисел от -1,79769313486232*10308 до -4,94065645841247*10-324
и положительных от 4,94065645841247*10-324 до 1,79769313486232*10308.
Числа, хранимые с использованием типа Double, называются числами двойной точности.

Следует иметь ввиду, что операции, выполняемые над числами с плавающей точкой, немного медленнее подобных операций над другими численными типами данных. Кроме того, числа, хранимые как типы данных с плавающей точкой, могут быть подвержены ошибкам округления. Если число с плавающей точкой очень большое или очень малое, VBA отображает его в экспоненциальном представлении.

В экспоненциальном представлении значения записываются без начальных и конечных нулей, и слева от десятичного знака имеется только одна цифра. Число умножается на 10 в некоторой степени, чтобы показать, где на самом деле находится десятичный знак. Следует помнить, что отрицательная степень приводит в результате к меньшему числу, а положительная - к большему. Вместо надстрочного символа показателя степени используется буква Е:
4.1Е3=4100
2.01Е-2=0.0201

Тип данных Currency

Это число с фиксированной точкой, т.е., десятичная точка всегда находится в одном и том же месте - справа от точки всегда имеются четыре цифры. Этот тип данных используется при денежных вычислениях, когда требуется высокая точность.

Currency хранит числа в диапазоне от -922337203685477,5808 до 922337203685477,5807.

Текстовые строки

Любые текстовые данные, сохраняемые в VBA, называются строками. Для их хранения предназначен тип данных String.

Строка может содержать текстовые символы любых типов: буквы, цифры, знаки пунктуации, разделительные символы и пр.

Строки всегда заключаются в двойные кавычки.

Существует две категории строк: строки переменной длины и строки фиксированной длины. По умолчанию в VBA все строки переменной длины.

Следует сказать, что тип данных String является очень важным типом, т.к., как правило, информация, вводимая пользователем - это строковые данные. Кроме того, поскольку на экране монитора отображается только текст, то все другие типы данных должны быть преобразованы в строковые данные перед выводом на экран.

Логические значения

VBA-программа принимает то или иное "решение", основываясь на различных условиях. Любое условие может принимать два значения: True (Истина) или False(Ложь). Логические значения True и False называются булевскими значениями, а тип данных - Boolean.

Булевские значения получают как результат операции сравнения. Операции сравнения имеет место при сравнении одного с другим, например, при сравнении двух чисел для определения, которое из них больше.

Тип данных Variant

Это особый тип данных, который может сохранять любые типы, за исключением типа Object. VBA использует этот тип данных для всех переменных, если только они не объявлены явно.

Данные типа Variant принимают характеристики определенного типа, который они сохраняют в данный момент. Например, если данные типа Variant содержат строковые данные, Variant принимает характеристики типа String. VBA использует для данных типа Variant наиболее компактное представление, возможное для конкретных значений, находящихся в данных.

Несмотря на то, что типы Variant удобны и избавляют от некоторой части работы при написании кода, они требуют большего объема памяти, чем любой другой тип данных, за исключением больших строк. Кроме того, математические операции и операции сравнения над данными типа Variant выполняются медленнее, чем подобные операции над данными любого другого типа. Следует избегать использования переменных Variant.

Теоретическое описание типов данных взято с сайта: http://www.on-line-teaching.com/vba/lsn007.html


 

Предварительный просмотр презентации

Математические функции и операторы

Функция Sqr Функция Sqr (число) – возвращает квадратный корень числа, например: Sqr(4) возвращает 2 Sqr(36) возвращает 6 Sqr(49) возвращает 7

Функция Sqn Функция Sqn (число) – определяет положительное число, отрицательное или равно нулю, если число отрицательное будет возвращено значение «-1», при положительном числе будет возвращено значение «1», если число ноль, то и значение будет возвращено как ноль. Примеры: Sqn(-66) –возвращает «-1» Sqn(75) – возвращает «1» Sqn(0) – возвращает «0»

Round Round (число [,число знаков после запятой]) Функция служит для округления чисел до заданной точности (число значащих цифр в дробной части). Возвращаемое значение: В результате действия функции возвращается округленное число Пример: Dim b as double C= 123,1234568 B= Round (c, 2) возвращает 123,12 B= Round (c, 4) возвращает 123,1234 Если не указать число значащих цифр дробная часть будет отброшена B= Round (c) возвращает 123

Rnd Rnd[ (Number)] Функция Rnd (Random) служит для генерации случайных чисел. Возвращаемое значение: Функция Rnd возвращает значение в диапазоне от 0 до, содержащее случайное число (причем 1 не входит в этот диапазон, а 0 входит). Строго говоря, функция возвращает псевдослучайные числа. При каждом запуске программы, функция генерирует одну и ту же последовательность случайных чисел. Во избежание этого явления используйте инструкцию Randomize Примечание: Чтобы получить значения случайных чисел в интервале от min до max используйте формулу: Int ( (max — min + 1) * Rnd + min), где min и max-минимальное и максимальное число соответственно Пример: Генерируем случайные числа от 1 до 7 Dim slchislo slchislo = Int ( (9 * Rnd) + 1)

IsNumeric IsNumeric (Expression)   Функция IsNumeric проверяет, является ли значение данного выражения числом. Возвращает значение типа Boolean, показывающее, имеет ли выражение числовое значение. Функция IsNumeric возвращает True, если выражение имеет числовое значение; в противном случае возвращается False. IsNumeric возвращает False, если выражение является выражением даты Пример: Проверим, имеет ли переменная значение, которое может  интерпретироваться как числовое Dim provstr, rez provstr = “53“   ' присваиваем значение   rez = IsNumeric (MyVar) ' возвращает True provstr = “45 Help» ' присваиваем значение   rez = IsNumeric (MyVar) ' возвращает Falsе

Abs  Abs (Number)  Функция Abs (Absolute) служит для вычисления абсолютного значения (модуля) числа Пример Dim A,B  A=Abs (60.5) ' возвращается 60.5  B=Abs (-99.10) ' возвращается 99.10

Математические операторы Сочетание клавиш Выполняемые действия Пример + + на цифровой клав., Shift+ «=» на алфавитно-цифровой сложение Sum= a+b A=2 B=5 Sum=7 - - на клавиатуре вычитание Razn=b-f B=20 F=15 Razn=5 / Знак деления на цифровой клавиатуре деление Delen= f/g F=15 G=2 Delen=7.5 \ \ на алфавитно- цифровой клавиатуре Целочисленное деление Celdel=h\k H=15 G=2 Celdel=7 * х на цифровой клавиатуре умножение Proizv=b*n B=5 N=25 Proizv=125 ^ Shift+6 на алфавитно-цифровой клавиатуре при английской раскладке Возведение в степень Stepen=n^3 N=6 Stepen=216

Тип данных Описание и диапазон значения Byte Хранение положительных чисел от 0 до 255 Boolean Хранение логических значений: True, False Currency Хранение чисел для точных вычислений в диапазоне от -922337203685477,5808 до 922337203685477,5807 Date Хранение даты и времени. Даты от 1.01.100 до 31.12.9999 Время от 00:00:00 до 23:59:59

Double Хранение чисел двойной точности от -1,79769313486232*10308 до -4,94065645841247*10-324 от 4,94065645841247*10-324 до 1,79769313486232*10308 Integer Хранение целых чисел от -32768 до 32767 Long Хранение целых чисел от -2147483648 до 2147483647

в формате Microsoft Word (.doc / .docx)
в формате MS Powerpoint (.ppt / .pptx)
Комментарии
Комментариев пока нет.