Как разбить код на многомерные массивы в Visual Basic 6.0? - VB
Формулировка задачи:
Сделал вот такую вот рограмку. Класс
и процедурка
Теперь мне сказали сделать из нее многомерный массив, но я не понимаю как это сделать, подскажите пожалуйста.
Листинг программы
- 'local variable(s) to hold property value(s)
- Private mvarA As Single 'local copy
- Private mvarB As Single 'local copy
- Private mvarC As Single 'local copy
- Public Function GetX2() As Single
- End Function
- Public Function GetX1() As Single
- End Function
- Public Function IsSolution() As Boolean
- End Function
- Public Property Let C(ByVal vData As Single)
- 'used when assigning a value to the property, on the left side of an assignment.
- 'Syntax: X.C = 5
- mvarC = vData
- End Property
- Public Property Get C() As Single
- 'used when retrieving value of a property, on the right side of an assignment.
- 'Syntax: Debug.Print X.C
- C = mvarC
- End Property
- Public Property Let B(ByVal vData As Single)
- 'used when assigning a value to the property, on the left side of an assignment.
- 'Syntax: X.B = 5
- mvarB = vData
- End Property
- Public Property Get B() As Single
- 'used when retrieving value of a property, on the right side of an assignment.
- 'Syntax: Debug.Print X.B
- B = mvarB
- End Property
- Public Property Let A(ByVal vData As Single)
- 'used when assigning a value to the property, on the left side of an assignment.
- 'Syntax: X.A = 5
- mvarA = vData
- End Property
- Public Property Get A() As Single
- 'used when retrieving value of a property, on the right side of an assignment.
- 'Syntax: Debug.Print X.A
- A = mvarA
- End Property
- В раздел описаний бало добавлено следующее объявление:
- Private D As Single ' Дискриминант квадратного уравнения
- Методы IsSolution, GetX1, GetX2 были запрограммированы следующим образом:
- Public Function GetX2() As Single
- D = B * B - 4 * A * C
- If IsSolution Then
- GetX1 = (-B + Sqr(D)) / (2 * A)
- Else
- MsgBox "УРАВНЕНИЕ НЕ ИМЕЕТ РЕШЕНИЙ"
- Exit Sub
- End If
- End Function
- Public Function GetX1() As Single
- D = B * B - 4 * A * C
- If IsSolution Then
- GetX1 = (-B - Sqr(D)) / (2 * A)
- Else
- MsgBox "УРАВНЕНИЕ НЕ ИМЕЕТ РЕШЕНИЙ"
- Exit Sub
- End If
- End Function
- Public Function IsSolution() As Boolean
- ' Вычисление дискриминанта
- Dim D As Single
- D = B * B - 4 * A * C
- If D < 0 Then IsSolution = False Else IsSolution = True
- End Function
Листинг программы
- В раздел объявлений добавлены следующие описания:
- Dim S As SqrEqu ' Объект класса SqrEqu
- Dim X1 As Single, X2 As Single ' Корни уравнения
- Dim A As Single, B As Single, C As Single ' Коэффициенты уравнения
- Программный код процедур для командных кнопок «Найти решение» (Command1) и «Проверить решение» (Command2) приведен ниже:
- Private Sub Command1_Click()
- Set S = New SqrEqu
- A = CSng(Text1.Text)
- B = CSng(Text2.Text)
- C = CSng(Text3.Text)
- S.A = A
- S.B = B
- S.C = C
- If Not S.IsSolution Then
- Label5.Caption = "НЕТ РЕШЕНИЙ"
- Exit Sub
- Else
- X1 = S.GetX1
- X2 = S.GetX2
- Label5.Caption = "X1= " & CStr(X1) & vbCr & "X2= " & CStr(X2)
- End If
- End Sub
- Private Sub Command2_Click()
- Label5.Caption = "Подстановка 1-го корня = " & CStr(A * X1 * X1 + B * X1 + C) & vbCr
- Label5.Caption = Label5.Caption & "Подстановка 2-го корня = " & CStr(A * X2 * X2 + B * X2 + C)
Решение задачи: «Как разбить код на многомерные массивы в Visual Basic 6.0?»
textual
Листинг программы
- Public Function GetSolution(ByVal A As Single, ByVal B As Single, ByVal C As Single, ByRef X1 As Single, ByRef X2 As Single) As Boolean
- Dim D As Single
- D = B * B - 4 * A * C
- If D >= 0 Then
- GetSolution = True
- X1 = (-B - Sqr(D)) / (2 * A)
- X2 = (-B + Sqr(D)) / (2 * A)
- End If
- End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д