Загрузка данных


Private Sub CommandButton1_Click()
    ' Пункт 4: Если вместо числа введена буква, выводим ошибку и выходим
    If Not (IsNumeric(TextBox1.Text) And IsNumeric(TextBox2.Text) And IsNumeric(TextBox3.Text)) Then
        MsgBox "Введите число", vbCritical, "Ошибка ввода"
        Exit Sub
    End If
    
    ' Объявление переменных
    Dim a As Double, b As Double, c As Double
    Dim d As Double, x1 As Double, x2 As Double
    
    ' Считывание коэффициентов из полей
    a = Val(TextBox1.Text)
    b = Val(TextBox2.Text)
    c = Val(TextBox3.Text)
    
    ' Вывод самого уравнения на форму (как на скриншоте в image.png)
    Label1.Caption = "Уравнение: " & a & "x^2 + (" & b & ")x + (" & c & ") = 0"
    
    ' Формула: Дискриминант D = b^2 - 4ac
    d = b ^ 2 - 4 * a * c
    Label2.Caption = "Дискриминант: " & d
    
    ' Проверка условий для корней
    If d < 0 Then
        ' Если D < 0, то уравнение не имеет действительных корней
        Label3.Caption = "Ответ: Уравнение не имеет действительных корней"
    ElseIf d = 0 Then
        ' Если D = 0, то один корень
        x1 = -b / (2 * a)
        Label3.Caption = "Ответ:" & vbCrLf & "Уравнение имеет один корень" & vbCrLf & "x = " & x1
    Else
        ' Если D > 0, то два корня
        x1 = (-b + Sqr(d)) / (2 * a)
        x2 = (-b - Sqr(d)) / (2 * a)
        Label3.Caption = "Ответ:" & vbCrLf & "Уравнение имеет два корня" & vbCrLf & "x1 = " & x1 & vbCrLf & "x2 = " & x2
    End If
End Sub