• 🚨 24 часа до повышения цены на курс «Пентест Active Directory: от теории к практике» от Академии Кодебай

    🔍 Изучите реальные техники атак на инфраструктуру Active Directory: от первоначального доступа до полной компрометации.
    🛠️ Освойте инструменты, такие как BloodHound, Mimikatz, CrackMapExec и другие.
    🧪 Пройдите практические лабораторные работы, имитирующие реальные сценарии атак.
    🧠 Получите знания, которые помогут вам стать востребованным специалистом в области информационной безопасности.

    Последний день записи в текущий поток по старой цене Подробнее о курсе ...

Visual Basic, Программисты Объясните Пожалуйста

  • Автор темы Автор темы unbarh
  • Дата начала Дата начала
U

unbarh

Здравствуйте, у меня курсовая работа по бейсику. Я написал код по найденному аналогу, но есть несколько очень непонятных моментов. Кому не трудно, код довольно короткий, можете написать пояснения к строкам?
Код под спойлером.
Код:
Dim x(50) As Single
Dim y(50) As Single
Dim y1(50) As Single
Dim y2(50) As Single
Private y0 As Single
Private x0 As Single
Private xk As Single

Function f(l As Single, q As Single) As Single
f = (Exp(l) / l) + q
End Function
Private Sub Command1_Click()
x0 = Val(Text1.Text)
xk = Val(Text2.Text)
y0 = Val(Text4.Text)
h = Val(Text3.Text)
N = Round((xk - x0) / h)
MSFlexGrid1.Rows = N + 2
MSFlexGrid1.TextMatrix(0, 0) = "X"
MSFlexGrid1.TextMatrix(0, 1) = "Эйлер"
MSFlexGrid1.TextMatrix(0, 2) = "Рунге-Кутт"
MSFlexGrid1.TextMatrix(0, 3) = "Общее реш."
Max = 17
Min = 4
y(0) = y0
y1(0) = y0
y2(0) = y0
For i = 0 To N
x(i) = x0 + i * h
y(i + 1) = Round(y(i) + f(x(i), y(i)) * h, 4)
K1 = h * f(x(i), y1(i))
K2 = h * f(x(i) + h / 2, y1(i) + K1 / 2)
K3 = h * f(x(i) + h / 2, y1(i) + K2 / 2)
K4 = h * f(x(i) + h, y1(i) + K3)
K = (K1 + 2 * K2 + 2 * K3 + K4) / 6
y1(i + 1) = y1(i) + K4
y2(i) = Round(Exp(x(i)) * (Log(x(i)) + 1.48), 4)
If y(i) > Max Then Max = y(i)
If y(i) < Min Then Min = y(i)
MSFlexGrid1.TextMatrix(i + 1, 0) = Str(x(i))
MSFlexGrid1.TextMatrix(i + 1, 1) = Str(y(i))
MSFlexGrid1.TextMatrix(i + 1, 2) = Str(y1(i))
MSFlexGrid1.TextMatrix(i + 1, 3) = Str(y2(i))
Next i
Picture1.Cls
kx = (Picture1.Width - 1200) / (xk - x0)
ky = (Picture1.Height - 1000) / (Max - Min)
Label4.Caption = Str(Min)
Label5.Caption = Str(Max)
Label6.Caption = Str(x0)
Label7.Caption = Str(xk)
For i = 0 To N - 1
z1 = Round(720 + (x(i) - x0) * kx)
z2 = Round(5400 - (y(i) - Min) * ky)
z3 = Round(5400 - (y1(i) - Min) * ky)
z4 = Round(5400 - (y2(i) - Min) * ky)
z5 = Round(720 + (x(i + 1) - x0) * kx)
z6 = Round(5400 - (y(i + 1) - Min) * ky)
z7 = Round(5400 - (y1(i + 1) - Min) * ky)
z8 = Round(5400 - (y2(i + 1) - Min) * ky)
Picture1.Line (z1, z2)-(z5, z6), vbGreen
Picture1.Line (z1, z3)-(z5, z7), vbRed
Picture1.Line (z1, z4)-(z5, z8)
Next i
End Sub

Private Sub Command2_Click()
End
End Sub
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Курс AD