|
-
Nov 20th, 2009, 06:31 PM
#1
Thread Starter
Addicted Member
[RESOLVED] Fourth Degree Equation Solver :)
Is anybody good with math?
Code:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim a As String = Me.TextBox1.Text
Dim b As String = Me.TextBox2.Text
Dim c As String = Me.TextBox3.Text
Dim d As String = Me.TextBox4.Text
Dim f As String = Me.TextBox5.Text
Me.lblFirst.Text = -b / (4 * a) - 1 / 2 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - _
2 * c / (3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * _
a * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * _
c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - _
9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * _
f) ^ 2)) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * b * c * d + _
27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + _
27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) - 1 / 2 * Math.Sqrt(b ^ 2 / (2 * _
a ^ 2) - 4 * c / (3 * a) - 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * _
a * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * _
c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - _
9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * _
f) ^ 2)) ^ (1 / 3)) - 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * _
a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * _
d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3) - (-b ^ 3 / a ^ 3 + _
4 * b * c / a ^ 2 - 8 * d / a) / (4 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * _
c / (3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * _
((2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * _
c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * _
f) ^ 2))) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * _
a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + _
27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3))))
Me.lblSecond.Text = -b / (4 * a) - 1 / 2 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - _
2 * c / (3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * _
a * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * _
c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - _
9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * _
f) ^ 2)) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * b * c * d + _
27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + _
27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) + 1 / 2 * Math.Sqrt(b ^ 2 / (2 * _
a ^ 2) - 4 * c / (3 * a) - 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * _
a * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * _
c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - _
9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * _
f) ^ 2)) ^ (1 / 3)) - 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * _
a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * _
d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3) - (-b ^ 3 / a ^ 3 + _
4 * b * c / a ^ 2 - 8 * d / a) / (4 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * _
c / (3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * _
((2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * _
c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * _
f) ^ 2))) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * _
a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + _
27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3))))
Me.lblThird.Text = -b / (4 * a) + 1 / 2 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / _
(3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * (2 * c ^ 3 - _
9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * _
(c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ _
2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) _
* (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + _
Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + _
27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) - 1 / 2 * 8 * _
Math.Sqrt(b ^ 2 / (2 * a ^ 2) - 4 * c / (3 * a) - 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + _
12 * a * f) / (3 * a * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * _
f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ _
3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / _
3)) - 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * _
b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + _
(2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ _
(1 / 3) + (-b ^ 3 / a ^ 3 + 4 * b * c / a ^ 2 - 8 * d / a) / (4 * Math.Sqrt(b ^ 2 / _
(4 * a ^ 2) - 2 * c / (3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * _
a * ((2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + _
Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + _
27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2))) ^ (1 / 3)) + 1 / (3 * 2 ^ _
(1 / 3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * _
a * c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3))))
Me.lblFourth.Text = -b / (4 * a) + 1 / 2 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / (3 * _
a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * (2 * c ^ 3 - 9 * b * _
c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ _
2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - _
9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * _
(c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + _
27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) + 1 / 2 * 8 * Math.Sqrt(b ^ 2 / (2 * _
a ^ 2) - 4 * c / (3 * a) - 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * _
(2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + _
Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + _
27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) - 1 / (3 * 2 ^ (1 _
/ 3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c _
* f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * _
d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3) + (-b ^ 3 / a ^ _
3 + 4 * b * c / a ^ 2 - 8 * d / a) / (4 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / _
(3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * ((2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ _
2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * _
b ^ 2 * f - 72 * a * c * f) ^ 2))) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ _
3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 _
* (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ _
2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3))))
End Sub
I'm not sure if this is the right thread for this. I am also not sure what I am doing wrong. Any suggestions?
VBNetDude - Thinking Programmatically
By Silver Seal Software
Don't forget to mark your thread as "Resolved" using the Thread Tools menu on top. And don't forget to rate the answers that help you the most! 
-
Nov 20th, 2009, 06:33 PM
#2
Thread Starter
Addicted Member
Re: Fourth Degree Equation Solver :)
VBNetDude - Thinking Programmatically
By Silver Seal Software
Don't forget to mark your thread as "Resolved" using the Thread Tools menu on top. And don't forget to rate the answers that help you the most! 
-
Nov 20th, 2009, 06:37 PM
#3
Re: Fourth Degree Equation Solver :)
Soooo... what. I assume it doesn't work. How? Does it error, does it not produce any results? Does it produce the wrong results?
Do you expect us to check if that equation is correct? Lol. That's some insane equation in VB code. Perhaps you could break it up into parts so it was easier to read and spot mistakes?
EDIT
The website even shows you exactly where the four roots are different. So that's a great opportunity to split it up. Looking at it very quickly I can see that each equation has 4 or 5 parts which are exactly the same. So do them in 4 or 5 different methods or whatever and then combine the results.
Last edited by NickThissen; Nov 20th, 2009 at 06:41 PM.
-
Nov 20th, 2009, 06:38 PM
#4
Re: Fourth Degree Equation Solver :)
Well..I recommend that you simplify the equations first. Then someone here will attempt to take a look at this.
-
Nov 20th, 2009, 06:43 PM
#5
Thread Starter
Addicted Member
Re: Fourth Degree Equation Solver :)
Sorry guys... I'll work on that now. The Error I get is "N/A". I guess being Not a Number is not nessesarily an error, but it is in this case. Sorry for not thinking before posting!
VBNetDude - Thinking Programmatically
By Silver Seal Software
Don't forget to mark your thread as "Resolved" using the Thread Tools menu on top. And don't forget to rate the answers that help you the most! 
-
Nov 20th, 2009, 06:43 PM
#6
Re: Fourth Degree Equation Solver :)
I don't think they can be simplified. Exact solutions for 4th and 5th grade polynomials are just ugly.
I don't know how much accuracy you are looking for? Perhaps you could calculate an approximate solution using one of the many available options. Hell, it may even be faster with that many operations.
Whatever you do, I do advice you to first convert the strings a, b, c, etc to doubles first. I'm not exactly sure, but perhaps the compiler is converting every occurrence of those strings to doubles implicitly. That would mean you doing 5 conversions vs the compiler doing probably hundreds!
-
Nov 20th, 2009, 06:57 PM
#7
Thread Starter
Addicted Member
Re: Fourth Degree Equation Solver :)
I actually saw the strings after I submitted the post, but I decided not to change it.
I think what everybody means by simplify is:
F = This part of the equation
G = This Part
H = This Part
X1 = (F/G)-H
or something like that. Breaking the equations into smaller parts and then just work with those parts... I just didn't want to go through the work.
The equations provided on the site don't put the '*' sign in, so I have to go through the whole equation and format it into something that VB will understand.
EDIT: I don't know how exact an answer I want, I suppose I doesn't have to be very exact. Ideally I would like to return a fraction that way I could work with it like that.
VBNetDude - Thinking Programmatically
By Silver Seal Software
Don't forget to mark your thread as "Resolved" using the Thread Tools menu on top. And don't forget to rate the answers that help you the most! 
-
Nov 20th, 2009, 09:03 PM
#8
Thread Starter
Addicted Member
Re: Fourth Degree Equation Solver :)
OK,
I am having more trouble simplifying. I found the differences between each one:
Code:
Me.lblFirst.Text = -b / (4 * a) _
- 1 / 2 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / _
(3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ _
2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 _
* b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ _
3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * _
(c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + _
27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) _
- 1 / 2 * Math.Sqrt(b ^ 2 / (2 * _
a ^ 2) - 4 * c / (3 * a) - 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * _
(2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + _
Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + _
27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) - 1 / (3 * 2 ^ (1 / _
3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * _
f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * _
d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3) _
- (-b ^ 3 / a ^ _
3 + 4 * b * c / a ^ 2 - 8 * d / a) / (4 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / (3 * _
a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * ((2 * c ^ 3 - 9 * b * _
c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * _
b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * _
f - 72 * a * c * f) ^ 2))) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ _
2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3))))
Me.lblSecond.Text = -b / (4 * a) _
- 1 / 2 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / _
(3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ _
2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 _
* b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ _
3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * _
(c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + _
27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) _
+ 1 / 2 * Math.Sqrt(b ^ 2 / (2 * _
a ^ 2) - 4 * c / (3 * a) - 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * _
(2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + _
Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + _
27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) - 1 / (3 * 2 ^ (1 / _
3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * _
f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * _
d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3) _
- (-b ^ 3 / a ^ _
3 + 4 * b * c / a ^ 2 - 8 * d / a) / (4 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / (3 * _
a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * ((2 * c ^ 3 - 9 * b * _
c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * _
b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * _
f - 72 * a * c * f) ^ 2))) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ _
2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3))))
Me.lblThird.Text = -b / (4 * a) _
+ 1 / 2 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / _
(3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ _
2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 _
* b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ _
3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * _
(c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + _
27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) _
- 1 / 2 * Math.Sqrt(b ^ 2 / (2 * _
a ^ 2) - 4 * c / (3 * a) - 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * _
(2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + _
Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + _
27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) - 1 / (3 * 2 ^ (1 / _
3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * _
f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * _
d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3) _
+ (-b ^ 3 / a ^ _
3 + 4 * b * c / a ^ 2 - 8 * d / a) / (4 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / (3 * _
a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * ((2 * c ^ 3 - 9 * b * _
c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * _
b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * _
f - 72 * a * c * f) ^ 2))) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ _
2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3))))
Me.lblFourth.Text = -b / (4 * a) _
+ 1 / 2 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / _
(3 * a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ _
2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 _
* b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ _
3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * _
(c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + _
27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) _
+ 1 / 2 * Math.Sqrt(b ^ 2 / (2 * _
a ^ 2) - 4 * c / (3 * a) - 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * _
(2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + _
Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + _
27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3)) - 1 / (3 * 2 ^ (1 / _
3) * a) * (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * _
f + Math.Sqrt(-4 * (c ^ 2 - 3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * _
d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3) _
+ (-b ^ 3 / a ^ _
3 + 4 * b * c / a ^ 2 - 8 * d / a) / (4 * Math.Sqrt(b ^ 2 / (4 * a ^ 2) - 2 * c / (3 * _
a) + 2 ^ (1 / 3) * (c ^ 2 - 3 * b * d + 12 * a * f) / (3 * a * ((2 * c ^ 3 - 9 * b * _
c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - 3 * _
b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * _
f - 72 * a * c * f) ^ 2))) ^ (1 / 3)) + 1 / (3 * 2 ^ (1 / 3) * a) * (2 * c ^ 3 - 9 * _
b * c * d + 27 * a * d ^ 2 + 27 * b ^ 2 * f - 72 * a * c * f + Math.Sqrt(-4 * (c ^ 2 - _
3 * b * d + 12 * a * f) ^ 3 + (2 * c ^ 3 - 9 * b * c * d + 27 * a * d ^ 2 + 27 * b ^ _
2 * f - 72 * a * c * f) ^ 2)) ^ (1 / 3))))
I am not sure that I can do much more... Does anybody know of a site that simplifies them for me? This is pretty monotonous!
VBNetDude - Thinking Programmatically
By Silver Seal Software
Don't forget to mark your thread as "Resolved" using the Thread Tools menu on top. And don't forget to rate the answers that help you the most! 
-
Nov 20th, 2009, 10:04 PM
#9
Member
Re: Fourth Degree Equation Solver :)
There is a guy on the forums that is just a god when it comes to math. Totally worth running it by him. Jemidiah answers math questions like he wrote the book.
http://www.vbforums.com/forumdisplay.php?f=20 this is a link to the maths forum. Perhaps post there.
Although, Im not sure even a math wiz is going to want to read through that formula problem by problem. Just a side note.
NicelyDone: The Visual Studio 2008 Newb 
There are 10 types of people in this world...Those who know binary and those who don't. 
*cough* Asimov *cough*
I used to be a pro at HTML...Wait, nooooo! Epic fail
-
Nov 21st, 2009, 12:22 AM
#10
Thread Starter
Addicted Member
Re: Fourth Degree Equation Solver :)
I found that this may be a better way:
http://www.1728.com/quartic2.htm
It breaks the steps into smaller ones. The only problem is that I need to find the ArcCosine of a number. I don't know what that means let alone how to find it!
Thanks for helping!
VBNetDude - Thinking Programmatically
By Silver Seal Software
Don't forget to mark your thread as "Resolved" using the Thread Tools menu on top. And don't forget to rate the answers that help you the most! 
-
Nov 21st, 2009, 12:24 AM
#11
Re: Fourth Degree Equation Solver :)
Math.ACos() should do that for you.
-
Nov 21st, 2009, 01:21 AM
#12
Fanatic Member
Re: Fourth Degree Equation Solver :)
EDIT: hey, my bad, I was thinking about something else, yesn you ARE right.
Last edited by tassa; Nov 21st, 2009 at 12:32 PM.
-
Nov 21st, 2009, 05:19 AM
#13
Re: Fourth Degree Equation Solver :)
 Originally Posted by tassa
Also arccosine equals 1/cosine(angle)... Just an fyi.
No, it doesn't!
arccos(x) = y <==> x = cos(y)
-
Nov 21st, 2009, 05:55 PM
#14
Re: Fourth Degree Equation Solver :)
Arccos finds the angle you need using the adjacent and hypotenuse sides of a triangle. 1/Cos(angle) is actually equal to the secant(angle).
Basic PreCalculus taught me that...sucks that my teacher could only tutor T_T and now I'm suffering for it in Calculus.
-
Nov 28th, 2009, 07:45 PM
#15
Re: Fourth Degree Equation Solver :)
 Originally Posted by NickThissen
arccos(x) = y <==> x = cos(y)
A small technical note--that's only true if y is restricted from 0 to pi (using the normal definition of arccos). You can also define arccos as a multivalued function, but things would get messy.
The time you enjoy wasting is not wasted time.
Bertrand Russell
<- Remember to rate posts you find helpful.
-
Dec 7th, 2009, 06:24 PM
#16
Thread Starter
Addicted Member
Re: Fourth Degree Equation Solver :)
OK, Thanks for all ther help. I do have some problems to work out, but am pretty busy with other things. So as time comes up, I will start another thread! Thank you, All!
VBNetDude - Thinking Programmatically
By Silver Seal Software
Don't forget to mark your thread as "Resolved" using the Thread Tools menu on top. And don't forget to rate the answers that help you the most! 
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|