ОСНОВНЫЕ ТИПЫ ПЕРЕМЕННЫХ VISUAL BASIC
№ | Тип переменной | Описание типа | Количество занимаемой памяти | Принимаемые значения |
1. | Integer | Целое число одинарной точности. | 2 байта | -32768…32767 |
2. | Long | Целое число двойной точности. | 4 байта | -2 147 483 648… |
3. | Single | Десятичное число с плавающей точкой одинарной точности | ±(10-45…3·1038) | |
4. | Double | Десятичное число с плавающей точкой двойной точности | 8 байт | ±(5·10-328…1.8·10308) |
5. | Currency | Десятичное число с фиксированной точкой | 8 байт | ±9·1014 |
6. | String | Строка символов | 1 байт/ 1 символ | До 65 400 символов |
7. | Byte | Целое число | 1 байт | 0…255 |
8. | Boolean | Логическое значение | 2 байта | True или False |
9. | Date | Дата и время | 8 байт | 1/1/100…12/31/9999 |
10. | Object | Экземпляр класса объекта OLE | 4 байта | |
11. | Variant | Любой из выше перечисленных типов | 16 байт + |
В Visual Basic для описания переменных используется оператор Dim. Формат оператора имеет следующий вид:DIM <имя переменной> AS <тип переменной>DIM <имя_переменной1> AS <тип_переменной1>,<имя_переменной2> AS <тип_переменной2>DIM <имя_ переменной1>, <имя_переменной2>, <имя_переменной3> AS <тип_переменной>Функции преобразования типов.
Функция | Описание |
CBool() | Преобразует переменную строкового типа (String) в тип Boolean |
Cbyte() | Преобразует переменную строкового типа (String) в тип Byte |
Ccur() | Преобразует переменную строкового типа (String) в тип Currency |
Cdate() | Преобразует переменную строкового типа (String) в тип Date |
CDbl() | Преобразует переменную строкового типа (String) в тип Double |
Cint() | Преобразует переменную строкового типа (String) в тип Integer |
CLng() | Преобразует переменную строкового типа (String) в тип Long |
CSng() | Преобразует переменную строкового типа (String) в тип Single |
CStr() | Преобразует числовую переменную в строковый тип String |
Val() | Преобразует переменную строкового типа (String) в числовой тип |
ПРИМЕРЫ
Dim x As Single, y As Single, a As Single
x = CSng(Text1.Text)
a = CSng (Text2.Text)
Text3.Text = CStr(y)
ОПЕРАТОР УСЛОВНОГО ПЕРЕХОДА
Линейный синтаксис
ОПЕРАТОР УСЛОВНОГО ПЕРЕХОДА
Блочный синтаксис
Пример
Private Sub Command1_Click()
Dim a As Integer, b As Integer, y As Single
a = CInt(InputBox("a="))
b = CInt(InputBox("b="))
If a < b Then
y = a + b
ElseIf a = b Then
y = (a + b) / 2
Else
y = a - b
End If
MsgBox "y=" + CStr(y)
End Sub
Операторы цикла
Цикл с параметром
Операторы цикла
Цикл с предусловием
Операторы цикла
Цикл с постусловием
1) DO
Массивы
Массивом называется упорядоченный набор данных, имеющих один и
тот же тип и располагающихся в памяти непосредственно друг за
другом.
Массивы могут быть:
Статические и динамические;
Числовые и символьные;
Одномерные и многомерные.
Как правило, одномерный массив называют вектором:
A(7)={3,8,4,1,2,5,4}
Двумерный массив является частным случаем многомерного массива и
представляет собой матрицу (таблицу)
A(4,4)= {3,4,5,1
2,9,0,3
4,7,9,5
3,2,6,7}
Описание массивов осуществляется с помощью оператора Dim.
Статический массив:
Dim A(1 to 7) As Integer, B(1 to 7, 1 to 7) as Single
Динамический массив:
Dim N as Integer, A() as Single
___________________________
Private Sub Command1_Click()
………………………………………
N=CInt(InputBox(“N=”))
ReDim A(1 to N) as Single
………………………………………
End Sub
Основные способы ввода и вывода элементов массива
Ввод элементов одномерного массива осуществляется в цикле.
Ввод элементов двумерного массива осуществляется в двух
Вложенных циклах.
ПРИМЕР. Сумма десяти вещественных чисел.
Dim a(1 To 10) As Single .
Private Sub Command1_Click()
Dim i As Integer
For i = 1 To 10
a(i) = CSng(InputBox("A(" + CStr(i) + ")="))
Next i
End Sub .
Private Sub Command2_Click()
Dim s As Single, i As Integer
s = 0
For i = 1 To 10
s = s + a(i)
Next i
Text1.Text = CStr(s)
End Sub .
Private Sub Command3_Click()
End
End Sub
Dim a() As Single, n As Integer .
Private Sub Command1_Click()
Dim i As Integer
List1.Clear
Open App.Path + "\massivin.txt" For Input As #1
Input #1, n
Label4.Caption = CStr(n)
ReDim a(1 To n) As Single
For i = 1 To n
Input #1, a(i)
List1.AddItem (CStr(a(i)))
Next i
Close #1
End Sub .
Private Sub Command2_Click()
Dim x As Single, i As Integer, k As Integer
For i = 1 To n - 1
For k = i To 1 Step -1
If a(k) > a(k + 1) Then
x = a(k)
a(k) = a(k + 1)
a(k + 1) = x
End If
Next k
Next i
For i = 1 To n
List2.AddItem (CStr(a(i)))
Next i
End Sub .
Private Sub Command3_Click()
End
End Sub
Dim x() As Single, n As Integer
Private Sub Command1_Click()
Dim i As Integer
n = CInt(InputBox("N="))
MSFlexGrid1.Rows = n + 1
MSFlexGrid1.Row = 0
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = "i"
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = "Не отсорт"
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = "Отсорт"
ReDim x(1 To n) As Single
For i = 1 To n
x(i) = CSng(InputBox("a(" + CStr(i) + ")="))
MSFlexGrid1.Row = i
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = CStr(i)
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = CStr(x(i))
Next i
End Sub
Private Sub Command2_Click()
Dim z As Integer, i As Integer, k As Integer, L As Single
For z = 1 To n - 1
k = z
For i = z To n
If x(k) > x(i) Then k = i
Next i
L = x(k)
x(k) = x(z)
x(z) = L
Next z
MSFlexGrid1.Col = 2
For i = 1 To n
MSFlexGrid1.Row = i
MSFlexGrid1.Text = CStr(x(i))
Next i
End Sub
Private Sub Command3_Click()
End
End Sub
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.