Содержание

Слайд 2

Описание массивов осуществляется с помощью оператора Dim. Статический массив: Dim A(1

Описание массивов осуществляется с помощью оператора 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
Слайд 3

Основные способы ввода и вывода элементов массива Ввод элементов одномерного массива

Основные способы ввода и вывода элементов массива

Ввод элементов одномерного массива

осуществляется в цикле.
Ввод элементов двумерного массива осуществляется в двух
Вложенных циклах.
ПРИМЕР. Сумма десяти вещественных чисел.
Слайд 4

Dim a(1 To 10) As Single . Private Sub Command1_Click() Dim

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
Слайд 5

ПОДКЛЮЧЕНИЕ ДОПОЛНИТЕЛЬНЫХ ЭЛЕМЕНТОВ УПРАВЛЕНИЯ

ПОДКЛЮЧЕНИЕ
ДОПОЛНИТЕЛЬНЫХ
ЭЛЕМЕНТОВ
УПРАВЛЕНИЯ

Слайд 6

Слайд 7

Microsoft FlexGrid Control 6.0

Microsoft FlexGrid Control 6.0

Слайд 8

СОРТИРОВКА МЕТОД «ПУЗЫРЬКА»

СОРТИРОВКА
МЕТОД «ПУЗЫРЬКА»

Слайд 9

Dim a() As Single, n As Integer . Private Sub Command1_Click()

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
Слайд 10

СОРТИРОВКА ВЫБОРОМ МИНИМАЛЬНОГО ЭЛЕМЕНТА

СОРТИРОВКА ВЫБОРОМ
МИНИМАЛЬНОГО ЭЛЕМЕНТА

Слайд 11

Dim x() As Single, n As Integer Private Sub Command1_Click() Dim

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

Слайд 12

ДВУМЕРНЫЕ МАССИВЫ Ввод двумерного массива целесообразно осуществлять из файла, так как

ДВУМЕРНЫЕ МАССИВЫ

Ввод двумерного массива целесообразно
осуществлять из файла, так как при
отладке программы

экономится время на
ввод значений элементов массива.
ПРИМЕР. Ввод двумерного массива из
файла и вывод его в таблицу и файл.
Слайд 13

ВИД ФОРМЫ ПРОГРАММЫ

ВИД ФОРМЫ ПРОГРАММЫ

Слайд 14

СОЗДАНИЕ ГЛАВНОГО МЕНЮ

СОЗДАНИЕ ГЛАВНОГО МЕНЮ

Слайд 15

ДИАЛОГОВЫЕ ОКНА

ДИАЛОГОВЫЕ ОКНА

Слайд 16

ДИАЛОГОВЫЕ ОКНА

ДИАЛОГОВЫЕ ОКНА

Слайд 17

ПРОГРАММНЫЙ КОД Dim a() As Single, n As Integer, m As

ПРОГРАММНЫЙ КОД

Dim a() As Single, n As Integer, m As Integer
Private

Sub mnuExit_Click()
End
End Sub
Private Sub mnuOpen_Click()
Dim s As String, i As Integer, j As Integer
CommonDialog1.Action = 1
s = CommonDialog1.FileName
Open s For Input As #1
Input #1, n, m
ReDim a(1 To n, 1 To m) As Single
For i = 1 To n
For j = 1 To m
Input #1, a(i, j)
Next j
Next i
Close #1
End Sub
Слайд 18

Private Sub mnuSave_Click() Dim s As String, i As Integer, j

Private Sub mnuSave_Click()
Dim s As String, i As Integer, j As

Integer
CommonDialog1.Action = 2
s = CommonDialog1.FileName
Open s For Output As #1
With MSFlexGrid1
.Rows = n + 1
.Cols = m + 1
For i = 1 To n
.Col = 0
.Row = i
.Text = CStr(i)
For j = 1 To m
.Row = 0
.Col = j
.Text = CStr(j)
.Row = i
.Text = CStr(a(i, j))
Print #1, a(i, j); " ";
Next j
Print #1, ""
Next i
Close #1
End With
End Sub
Слайд 19

ПРОЦЕДУРЫ Visual Basic поддерживает следующие виды процедур: Процедуры общего вида, создаваемые

ПРОЦЕДУРЫ

Visual Basic поддерживает следующие виды процедур:
Процедуры общего вида, создаваемые пользователем Sub…End

Sub.
Процедуры – функции, создаваемые пользователем Function…End Function
Процедуры обработки событий.
Процедуры свойств Get() и Set().
Слайд 20

Процедура Sub…End Sub Формат: Sub ( as , as ,…, _

Процедура Sub…End Sub

Формат:
Sub <Имя>(<перем1> as <тип1>, <перем2> as <тип2>,…,<перемN> _
as

<типN>)
<тело процедуры>
End Sub
Для вызова процедуры используется ключевое слово Call
Private Sub Command1_Click()
……
Call <Имя>(<перем1>,<перем2>,…,<перемN>)
……
End Sub
Слайд 21

Процедура-функция Function…End Function Формат: Function ( as , as ,…, _

Процедура-функция Function…End Function

Формат:
Function <Имя>(<перем1> as <тип1>, <перем2> as <тип2>,…,<перемN> _
as

<типN>) as <тип>
<тело функции>
End Function
Вызов процедуры-функции похож на вызов стандартной математической
функции.
Private Sub Command1_Click()
……
Z=<Имя>(<перем1>,<перем2>,…,<перемN>)
……
End Sub
Слайд 22

ПЕРЕДАЧА ПАРАМЕТРОВ Передача параметров в процедуры Sub…End Sub и Function…End Function

ПЕРЕДАЧА ПАРАМЕТРОВ

Передача параметров в процедуры
Sub…End Sub и Function…End Function
может осуществляться как

по ссылке, так
и по значению.
Передача параметров по значению:
Sub Name1(By Val x() as Single, By Val N as Single)
….
End Sub
Слайд 23

ПЕРЕДАЧА ПАРАМЕТРОВ Передача параметров по ссылке: Sub Name1(By Ref x() as

ПЕРЕДАЧА ПАРАМЕТРОВ

Передача параметров по ссылке:
Sub Name1(By Ref x() as Single, By

Ref N as Single)
….
End Sub
или
Sub Name1(x() as Single, N as Single)
….
End Sub
По умолчанию параметры передаются по ссылке.
Слайд 24

ПРИМЕРЫ Поиск коэффициентов уравнения регрессии y=a*x+b Sub MNK1(x() as single, y()

ПРИМЕРЫ

Поиск коэффициентов уравнения
регрессии y=a*x+b
Sub MNK1(x() as single, y() as single, N

as integer, a as single, _
b as single)
Dim i as integer, s1 as single, s2 as single, s3 as single, s4 as single
s1=0:s2=0:s3=0:s4=0
For i=1 to N
s1=s1+x(i)
s2=s2+x(i)*x(i)
s3=s3+x(i)*y(i)
s4=s4+y(i)
Next i
a=(N*s3-s1*s4)/(N*s2-s1*s1)
b=(s2*s4-s1*s3)/(N*s2-s1*s1)
End Sub