Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Лекции по VBA для гуманитарных специальностей - файл 2 Лекция.doc


Лекции по VBA для гуманитарных специальностей
скачать (2267.5 kb.)

Доступные файлы (7):

0лекции.doc2801kb.19.05.2011 23:01скачать
1 Лекция.doc87kb.19.05.2011 23:01скачать
2 Лекция.doc148kb.19.05.2011 23:01скачать
3 Лекция.doc84kb.19.05.2011 23:01скачать
4 Лекция.doc48kb.19.05.2011 23:01скачать
5 Лекция.doc54kb.19.05.2011 23:01скачать
6 Лекция.doc36kb.19.05.2011 23:01скачать

2 Лекция.doc




Лекция 2




Булева операция

Оператор

Отрицание

NOT

Конъюнкция (логическое «И»)

AND

Дизъюнкция (логическое «Или»)

OR

Исключающее «Или»

XOR

Эквиваленция

EQV

Импликация

IMP

^ И – истина, Л – ложь.

Выражение 1

Выражение 2

NOT

AND

OR

XOR

EQV

IMP

И

И

Л

И

И

Л

И

И

И

Л

Л

Л

И

И

Л

Л

Л

И

И

Л

И

И

Л

И

Л

Л

И

Л

Л

Л

И

И

Функции

Тригонометрические функции



Функция

Оператор

Что делает

1

Arctg x

ATN(x)

Возвращает арктангенс указанного числового выражения

2

Cos 

COS()

Возвращает косинус указанного угла. Угол задан в радианах.

3

Sin 

SIN()

Возвращает синус указанного угла. Угол задан в радианах.

4

Tg 

TAN()

Возвращает тангенс указанного угла. Угол задан в радианах.

Уголв радианах=Уголв градусах; где =3,141592654.

Связь между обратными тригонометрическими функциями

ArcSin x=Arctg(; ArcCos=Arctg(

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

Математическая запись

Функция

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



ABS(x)

Возвращает абсолютное значение числовой переменной x




CDBL(x)

Переводит числовое выражение в значение с двойной точностью




CSNG

Переводит числовое выражение в значение с обычной точностью




CINT

Округляет числовое выражение до целого значения

ex

EXP(x)

Возвращает e, возведенное в степень x

Ln(x)

LOG(x)

Возвращает натуральный логарифм числового выражения




INT(x)

Возвращает наибольшее целое, меньшее или равное числовому выражению




FIX(x)

Округляет выражение с плавающей точкой до его целой части




RND(x)

Возвращает случайное число одинарной точности от 0 до 1



SQR(x)

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




SQN(x)

Возвращает значения, указывающее знак числового выражения

в частности

Работа с символьной информацией

Обработка числовой информации в тексте – функции val, str$.

Символьные функции

функция

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

ASC(x)

Возвращает код ASII первого символа в символьной переменной x

CHR(x)

Возвращает символ соответствующий коду ASII x

INSTR(x,y)

Возвращает позицию первого обнаружения строки x в строке y

LEFT(x,n)

Возвращает n символов, стоящих с левого края символьной переменной x

LTRIM(x)

Удаляет начальные пробелы в символьной переменной x

MID(x,I,k)

Вырезает из символьной переменной x k символов, начиная с i-того

RIGTH(x,n)

Возвращает n символов, стоящих с правого края символьной переменной x

RTRIM(x)

Удаляет конечные пробелы в символьной переменной x

SPASE(n)

Возвращает n пробелов

STR(x)

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

STRING(L,x)

Возвращает L символов, совпадающих с первым символом символьной переменной x

VAL(x)

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



^ Инструкции принятия решения (оператор условия и оператор выбора)

Инструкции принятия решения позволяют выполнять группы инструкций в зависимости от определенного условия. В VBA для принятия решения используются две инструкции: If …then …else и Select Case.
Инструкция If …then …else

Инструкция If …then …else задает выполнение определенных групп инструкций в зависимости от значения выражения. Ее синтаксис приведен ниже:

Синтаксис 1.

If <выражение> Then <операторы Then > [Else <операторы Else>].
Или второй вариант синтаксиса.
If <выражение> Then

<операторы Then >

[Else <операторы Else>]

End if.

Параметры выражение, выражение 1, выражение2 — логические УСЛОВИЯ. Это

логические константы, переменные и выражения, принимающие значения True (истина) или False (ложь).

Параметры операторы1, операторы2, ... представляют собой один или более операторов в одной или нескольких строках. Операторы в одной строке раз­деляются двоеточиями.

При выполнении условного блокового оператора проверяется первое выра­жение и при его истинности выполняется первый блок операторов. Иначе (если выражение ложно) проверяются все логические условия, следующие за словом Elseif до тех пор. пока не будет найдено условие, принимающее значение "истина". В этом случае выполняется блок операторов, следующий за словом Then, иначе (если условие не найдено) выполняется блок опера­торов, следующий за словом Else. Блоки Elseif и Else необязательны. Любые блоки в операторе могут содержать вложенные блоковые операторы if. Оператор if должен быть первым в строке программы. Условный однострочный оператор отличается от блокового наличием опера­торов после слова Then в этой же строке. Однострочный оператор более подходит для кратких условий и простых действий, приводящих к записи строк небольшой длины. Блочный оператор if, хотя и требует больше строк для записи, но более нагляден, понятен, лучше показывает структуру ветвления. Поэтому он бо­лее предпочтителен на начальных этапах знакомства с программированием ветвлений.

Пример 1.

Найти корень квадратный b из вещественного числа a.

Программа:
Sub pr1()

Dim a As Single, b As Double

a = Val(InputBox("введите a:"))

If a >= 0 Then b = a ^ 0.5

MsgBox "a=" & a & " " & "b=" & b

End Sub
Блок- схема программы примера 1
Если ввести а равное 121, то получим b=11. Если ввести а равное -4,то в результате для b не будет ответа.
Пример 2.

Найти корень квадратный b из вещественного числа a.

Sub pr2()

Dim a As Single, b As Double

a = Val(InputBox("введите a:"))

If a >= 0 Then

b = a ^ 0.5

MsgBox "a=" & a & " " & "b=" & b

Else

MsgBox "действительных корней нет"

End If

End Sub

Блок- схема программы примера 2.
Если ввести а равное 121, то получим b=11. Если ввести а равное -4,то в результате для будет сообщение «действительных корней нет».

Синтаксис 2(блоковый).

If <выражение 1> then

[<операторы 1>]

[elseif <выражение 2> then

[<операторы 2>]

……

[else

[<операторы n>]

End if

Пример 3.

Вводится число x. Если вывести на экран значение функции, график которой приведен на рисунке. Если x<-1 или x>1, вывести на экран надпись: «Функция не определена».


Sub pr11()

Dim x, y

x = Val(InputBox("введите x:"))

If x >= -1 And x <= 0 Then

y = (1 - x ^ 2) ^ 0.5

MsgBox "x=" & x & Chr(10) & Chr(13) & _

"y=" & y

ElseIf x > 0 And x < 1 Then

y = 1 - x ^ 2

MsgBox "x=" & x & Chr(10) & Chr(13) & _

"y=" & y

Else

MsgBox "функция не определена"

End If

End Sub

Блок- схема программы примера 3.

^ Инструкция Select Case

Синтаксис

Select Case <выражение для проверки> Case <список 1>

<блок операторов 1>

Case <список 2>

<блок операторов 2>

………..

Case Else

<блок операторов п>

End Select

Параметр выражение для проверки — любое числовое или строковое выра­жение, в зависимости от значения которого выполняется соответствующий блок операторов. Параметры список 1, список 2 и т. д. — это списки вы­ражений, записанных в следующих формах:

выражение [, выражение. . . ], например Case 1, 3, 5, 7, 9;

Case a, b, с, d

выражение То выражение, например: Case 5 То 13; Case a To d

Is операция отношения, например:

Case Is<20; Case Is <>a В списках могут быть использованы различные формы записи, например:

Case 2, 5, 8 То 15. 18, 25 То 30, Is >50
Sub testsub1()

Dim sngналог As Single, intпараметр, sngсумма

intпараметр = Val(InputBox("введите целое число:"))

sngсумма = Val(InputBox("введите число:"))

Select Case intпараметр

Case 0

sngналог = sngсумма * 0

Case 1

sngналог = sngсумма * 0.05

Case 2

sngналог = sngсумма * 0.1

Case 3

sngналог = sngсумма * 0.15

Case 4

sngналог = sngсумма * 0.2

Case Else

sngналог = sngсумма * 0

End Select

MsgBox "sngналог=" & sngналог

End Sub

В этом примере осуществляется выбор ставки налога (0; 0,05; 0,10; 0,15; 0,20) в зависимости от значения выражения intпараметр. Предусмотрен также вариант выбора, когда значения выражения intпараметр не совпадают ни с одним выражением в предложениях Case.

Инструкция Go to

Существует еще одна инструкция безусловного перехода Go to, которая в общем виде записывается так:

Go to Метка.

Метка это идентификатор с двоеточием, стоящий перед инструкцией, которая должна быть выполнена после инструкции Go to.

^ Пример1. Написать программу вычисления ,если введен правильный пароль.

Sub pparol()

Dim parol, x, y

finish:

parol = (InputBox("введите пароль"))

If parol <> "nataly" Then 'nataly правильный пароль

MsgBox "неверный пароль, доступ запрещен"

GoTo finish

End If

x = Int(Rnd * 10 + 1): y = x ^ 0.5

MsgBox "x=" & x & "y=" & y

End Sub

Sub pr42()

'Ввести три любых числа, сумму двух чисел поделить на третье, сделать про‘верку, что в знаменателе число <>0.

Dim x, y, sum, z

x = Val(InputBox("введите x:"))

y = Val(InputBox("введите y:"))

1: z = Val(InputBox("введите z:"))

If z <> 0 Then

sum = (x + y) / z

ElseIf z = 0 Then

MsgBox "введен ноль"

GoTo 1

End If

MsgBox "sum=" & sum

End Sub


Скачать файл (2267.5 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации