I am making a program that deals with basic algebraic functions. The following function is meant to calculate the value of x given a certain value of y. The problem is that the answer can't be exact, so I need to figure out how to find the closest number. I thought rounding would work, but it doesn't.
Code:Private Sub cmdX_Click() Dim math As New clsMathParser Dim x As Single If lstEqu.Text = vbNullString Then MsgBox "You need to select an equation from the list.", vbCritical Exit Sub End If math.StoreExpression lstEqu.Text For x = xmin To xmax Step 0.001 If Round(math.Eval1(x), 3) = Val(txtY) Then txtX = x Exit For End If Next x End Sub




Reply With Quote