Основы программированияна Visual Basic

Содержание

Слайд 2

История создания ЯП

1950

1960

1970

1980

FORTRAN

Algol 60

Simula

Algol-68

Cobol

Lisp

Pascal

C

SmallTalk

Ada

C++

Miranda

BASIC

Prolog

Modula-2

История создания ЯП 1950 1960 1970 1980 FORTRAN Algol 60 Simula Algol-68

Слайд 3

Требования к алгоритмам

Наличие ввода исходных данных
Наличие вывода результата выполнения
Однозначность
Общность
Корректность
Конечность
Эффективность.

Требования к алгоритмам Наличие ввода исходных данных Наличие вывода результата выполнения Однозначность Общность Корректность Конечность Эффективность.

Слайд 4

Создание компьютерной игры

Создание трехмерного графического движка.
Написание модуля искусственного интеллекта созданий, населяющих уровень.
Реализация

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

Слайд 5

Сложение 2 чисел

Считать число А
Считать число В
Выполнить суммирование А + В
Вывести результат

Сложение 2 чисел Считать число А Считать число В Выполнить суммирование А
сложения
Закончить работу

Слайд 6

Решение уравнения ax=b

Считать число А
Считать число В
Если число А = 0 и

Решение уравнения ax=b Считать число А Считать число В Если число А
число В равно 0, то вывести на экран ответ (х – любое) и закончить программу.
Если число А = 0 и число В не равно 0, то вывести на экран ответ (решений нет) и закончить программу.
Вывести ответ В/А.
Закончить программу

Слайд 7

Переменные в ЯП

Переменная – это одна или несколько ячеек оперативной памяти компьютера,

Переменные в ЯП Переменная – это одна или несколько ячеек оперативной памяти
которым присвоено определенное имя, то есть просто некое место в памяти компьютера, причем чаще всего, определенного размера, в котором хранятся какие-то данные.

Слайд 8

Замечание об именах переменных

Сравните:
х1, у1 и MaxXResolution, MaxYResolution

Замечание об именах переменных Сравните: х1, у1 и MaxXResolution, MaxYResolution

Слайд 9

Обязательное объявление переменных до использования

В VB для того, чтобы включить обязательное объявление

Обязательное объявление переменных до использования В VB для того, чтобы включить обязательное
переменных, необходимо в начале модуля поставить строку Option Explicit

Слайд 10

Объявление переменных

Dim <имя переменной> As <имя типа>
Private <имя переменной> As <имя

Объявление переменных Dim As Private As Public As Static As
типа>
Public <имя переменной> As <имя типа>
Static <имя переменной> As <имя типа>

Слайд 11

Если слово As опущено

Dim MaxXRes, MaxYRes as Integer
Переменной MaxXRes будет присвоен тип

Если слово As опущено Dim MaxXRes, MaxYRes as Integer Переменной MaxXRes будет
не Integer, как мы бы могли ожидать, а Variant

Слайд 12

Простые типы в VB

Простые типы в VB

Слайд 13

Примеры объявлений перем.

Dim MaxXRes As Integer, MaxYRes as Integer
Dim Count As Long
Dim

Примеры объявлений перем. Dim MaxXRes As Integer, MaxYRes as Integer Dim Count
CellIsEmpty As Boolean
Dim QuestionText As String

Слайд 14

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

х=х+1
Этот оператор решает 3 важные задачи:
Вычисление значения выражения в правой части

Оператор присваивания х=х+1 Этот оператор решает 3 важные задачи: Вычисление значения выражения
оператора.
Вычисление выражения в левой части оператора присваивания, выражение должно определять адрес ячейки памяти.
Копирование значения, вычисленного на шаге 1, в ячейки памяти, начиная с адреса, полученного на шаге 2.

Слайд 15

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

[Let] <имя переменной> = <выражение>.
MaxXRes = 1024
MaxYRes = 768
Count = 1000000
CellIsEmpty

Оператор присваивания [Let] = . MaxXRes = 1024 MaxYRes = 768 Count
= True
QuestionText = "Who am I?"
Count = Count + 1
MaxNumbOfPoints = MaxXRes* MaxYRes
NumbOfBits = NumbOfBytes*8

Слайд 16

Модуль в VB

Sub Name1()

End Sub

Модуль в VB Sub Name1() … End Sub

Слайд 17

Ввод информации в VB

stringvar = InputBox (Prompt [, Title])
MaxXRes = InputBox

Ввод информации в VB stringvar = InputBox (Prompt [, Title]) MaxXRes =
(“Введите макс. разр. по оси Х”)

Слайд 18

Вывод информации в VB
MsgBox(prompt[, buttons] [, title] [, helpfile, context])

Вывод информации в VB MsgBox(prompt[, buttons] [, title] [, helpfile, context])

Слайд 19

Программа сложения 2 чисел

'Option Explicit
Sub SumExamp()
Dim A as Integer, B As Integer,

Программа сложения 2 чисел 'Option Explicit Sub SumExamp() Dim A as Integer,
Sum As Integer
A = InputBox("Введите первое слагаемое")
B = InputBox("Введите второе слагаемое")
Sum = A + B
MsgBox ("Сумма " & A & “ и " & B & “ = " & Sum)
End Sub

Слайд 20

Обмен значений

Dim A As Integer, B As Integer, Temp As Integer
A =

Обмен значений Dim A As Integer, B As Integer, Temp As Integer
5
B = 10
Temp = A
A = B
B = Temp

Слайд 21

Обмен значений в случае целых

Dim A As Integer, B As Integer
A =

Обмен значений в случае целых Dim A As Integer, B As Integer
5
B = 10
A = A + B
B = A – B
A = A – B

Слайд 22

Константы

Const ИмяКонст [As ТипКонст] = ЗначКонст
Const Pi As Double = 3.141592
Const Tax

Константы Const ИмяКонст [As ТипКонст] = ЗначКонст Const Pi As Double =
As Single = 0.13
Const Greeting = "Привет"

Слайд 23

Процедурная область действия

Sub Sum()
Dim A As Integer, B As Integer, C As

Процедурная область действия Sub Sum() Dim A As Integer, B As Integer,
Integer
A = 5
B = 7
C = A + B
MsgBox "Сумма А и В = " & C
End Sub
Sub Difference()
Dim A As Integer, B As Integer, C As Integer
A = 5
B = 7
C = A - B
MsgBox " Разность А и В = " & C
End Sub

Слайд 24

Модульная область действия

Option Explicit
Const Pi = 3.14159219841984
Sub CircleLength()
Dim Radius As Double
Dim Length

Модульная область действия Option Explicit Const Pi = 3.14159219841984 Sub CircleLength() Dim
As Double
Radius = InputBox("Введите радиус…")
Length = Radius * 2 * Pi
MsgBox "Длина окружности радиуса " & Radius & " равна " & Length
End Sub

Слайд 25

Переменные с один. именами в разных областях действия

Option Explicit
Const Test As Integer

Переменные с один. именами в разных областях действия Option Explicit Const Test
= 100
Sub Test1()
Dim Test As Double
Test = 3.1415
MsgBox Test
End Sub
Sub Test2()
Dim Test As String
Test = "aaaaaaaaa"
MsgBox Test
End Sub
Sub Test3()
MsgBox Test
End Sub

Слайд 26

Время жизни переменных

Время жизни переменных определяет, как долго переменная сохраняет свое значение.

Время жизни переменных Время жизни переменных определяет, как долго переменная сохраняет свое

Переменная, объявленная внутри процедуры при помощи Dim, теряет свое значение при выходе из нее.
Для объявления переменной на процедурном уровне, но со временем жизни модуля – Static.
Static NumberOfCalls as Integer

Слайд 27

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

^ Возведение в степень
* / Умножение и деление
\ Целочисленное деление
Mod Нахождение

Математические операции ^ Возведение в степень * / Умножение и деление \
остатка
+ - Сложение и вычитание

Слайд 28

Операции сравнения

> Больше, чем
< Меньше, чем
>= Больше или равно, чем
<= Меньше или равно, чем
= Равно
<> Не

Операции сравнения > Больше, чем >= Больше или равно, чем = Равно Не равно
равно

Слайд 29

Сравнение строк

"фио"="фио"
"фио"<>" фио"
"фио" < "фио "
"фиот" > "фио"

Сравнение строк "фио"="фио" "фио" " фио" "фио" "фиот" > "фио"

Слайд 30

Сравнение строки с шаблоном

StrExpr Like Templ
Символы в шаблоне:
#
*
?
[list]
[!list]
В квадратных

Сравнение строки с шаблоном StrExpr Like Templ Символы в шаблоне: # *
скобках также можно указать и диапазон ([a-z])

Слайд 31

Сравнение строки с шаблоном - пример

Sub TemplateExamp()
Dim MyCheck
MyCheck = "aBBBa"

Сравнение строки с шаблоном - пример Sub TemplateExamp() Dim MyCheck MyCheck =
Like "a*a" ' Возвращает True.
MyCheck = "F" Like "[A-Z]" ' Возвращает True.
MyCheck = "F" Like "[!A-Z]" ' Возвращает False.
MyCheck = "a2a" Like "a#a" ' Возвращает True.
MyCheck = "aM5b" Like "a[L-P]#[!c-e]" ' Возвращает True.
MyCheck = "BAT123khg" Like "B?T*" ' Возвращает True.
MyCheck = "CAT123khg" Like "B?T*" ' Возвращает False
End Sub

Слайд 32

Логические операции

Not Логическое Не
And Логическое И
Or Логическое Или

Логические операции Not Логическое Не And Логическое И Or Логическое Или

Слайд 33

Таблица истинности

Х TRUE TRUE FALSE FALSE
Y TRUE FALSE TRUE FALSE
NOT X FALSE FALSE TRUE TRUE
X AND Y TRUE FALSE FALSE FALSE
X OR Y TRUE TRUE TRUE FALSE

Таблица истинности Х TRUE TRUE FALSE FALSE Y TRUE FALSE TRUE FALSE

Слайд 34

Порядок вычисления

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

Порядок вычисления 1. Вначале всегда части выражения, заключенные в круглые скобки, если
в круглых скобках само сложное, то применяем эти же правила.
2. Затем выполняем в соответствии с приоритетом (смотри таблицу ниже)
3. Если равный уровень приоритета, то вычисляем слева направо.

Слайд 35

Приоритет операций

Dim A As Integer, B As Integer
A = 6+5*4
B = (6+5)*4

Приоритет операций Dim A As Integer, B As Integer A = 6+5*4
Внимание, A не равно B!!!

Слайд 36

Приоритет операций

- Знаки арифметических операций
- Знаки конкатенации строк
- Операторы сравнения
- Логические операторы

Приоритет операций - Знаки арифметических операций - Знаки конкатенации строк - Операторы сравнения - Логические операторы

Слайд 37

Приоритет операций

^ - возведение в степень
- - унарный минус
*/ - умножение и

Приоритет операций ^ - возведение в степень - - унарный минус */
деление
\ - целочисленное деление
Mod - остаток
+, -
&
<, <=, >=, Like, <>
Not
And
Or
Xor
Eqv

Слайд 38

Найти значение Result

Dim Result As Boolean, X As Boolean
Dim Y As Boolean,

Найти значение Result Dim Result As Boolean, X As Boolean Dim Y
Z As Boolean
Dim A As Integer, B As Integer
A = 5: B = 10
X = FALSE: Y = TRUE: Z = FALSE
Result = X AND (Y OR (Z AND Y) AND _ (NOT (X OR Z))) OR ( A > B)

Слайд 39

Оформление программы

Символ разделения 2 операторов в одной строке - двоеточие:
A = 5:

Оформление программы Символ разделения 2 операторов в одной строке - двоеточие: A
B = 7
Если оператор не помещается в одной строке, пробел и подчеркивание:
MyAddr = "Город:"& City&", улица:"&Street _
&"дом:"&Number
Комментарий – все, что после апострофа
Dim Count As Integer ‘Count – cчетчик числа элем.

Слайд 40

Оператор простого выбора

If Условие Then Операторы [Else Операторы]
Пример 1:
If Balance - Check

Оператор простого выбора If Условие Then Операторы [Else Операторы] Пример 1: If
< 0 Then MsgBox “На вашем счету перерасход“
Пример 2:
Sub TestIf()
Dim Number as Integer
Number = InputBox(“Введите число”)
If Number > 0 Then MsgBox (“Положительн.”) Else MsgBox (“Отрицат.”)
End Sub

Слайд 41

Многострочный оператор простого выбора

If Условие Then
Оператор1

ОператорN
End If
Или же, при

Многострочный оператор простого выбора If Условие Then Оператор1 … ОператорN End If
необходимости второй ветви:
If Условие Then
Оператор1

ОператорN
Else
Оператор1

ОператорN
End If

Слайд 42

Многострочный оператор простого выбора
If Balance - Check < 0 Then
MsgBox "Ваши

Многострочный оператор простого выбора If Balance - Check MsgBox "Ваши средства израсходованы!"
средства израсходованы!"
MsgBox "Банк уведомлен!"
Else
Balance = Balance - Check
End If

Слайд 43

Вложенные операторы If… Then

Option Explicit
Sub DiscountCalculation()
Dim InitialPrice As Double, PriceToPay As Double
InitialPrice

Вложенные операторы If… Then Option Explicit Sub DiscountCalculation() Dim InitialPrice As Double,
= InputBox("Введите цену покупки")
If InitialPrice > 10000 Then
PriceToPay = InitialPrice * 0.9
Else
If InitialPrice > 5000 Then
PriceToPay = InitialPrice * 0.95
Else
If InitialPrice > 1000 Then
PriceToPay = InitialPrice * 0.9
Else
PriceToPay = InitialPrice
End If
End If
End If
MsgBox "С вас - " & PriceToPay & " руб."
End Sub

Слайд 44

Решение уравнения ax=b

Option Explicit
Sub LinearEq()
Dim A as Double, B as Double, X

Решение уравнения ax=b Option Explicit Sub LinearEq() Dim A as Double, B
as Double
A = InputBox(“Введите коэф. А”)
B = InputBox(“Введите коэф. B”)
If (A = 0) And (B=0) Then
MsgBox “Х – любое число”
Else
If A=0 Then
MsgBox “Решений нет”
Else
X = B / A
MsgBox “X =” & X
End If
End If
End Sub

Слайд 45

Решение квадратного уравнения (не полн.)

Option Explicit
Sub SqrEq()
Dim A as Double, B as

Решение квадратного уравнения (не полн.) Option Explicit Sub SqrEq() Dim A as
Double, C as Double, D As Double
Dim X1 as Double, X2 as Double
A = InputBox(“Введите коэф. А”)
B = InputBox(“Введите коэф. B”)
C = InputBox(“Введите коэф. C”)
D = B*B –4*A*C
If D < 0 Then
MsgBox “Решений нет”
Else
If D = 0 Then
X = - B / (2*A)
MsgBox “Решение – х = “ & X
Else
X1 = (-B – SQRT(D)/(2*A)
X2 = (-B + SQRT(D)/(2*A)
MsgBox “Решения: х1 = “ & X1 & “x2 = “ & X2
End If
End If
End Sub

Слайд 46

Оператор множественного выбора

Select Case <Проверяемое выражение>
Case <Список выражений1>
<Операторы1>
Case <Список выражений2>
<Операторы2>

[Case Else

Оператор множественного выбора Select Case Case Case … [Case Else ] End
<ОператорыElse> ]
End Select

Пример:
Select Case Argument
Case Is < 0

Case 0 To 10

Case 100, 1000, 10000

Case Else

End Select

Имя файла: Основы-программированияна-Visual-Basic.pptx
Количество просмотров: 106
Количество скачиваний: 1