Hoe kwadratische vergelijkingen te programmeren in Visual Basic

Een kwadratische vergelijking is een tweedegraads polynoom met de vorm "ax^2 + bx + c = 0". De "a", "b" en "c" zijn de constanten en "x" is de variabele. Wanneer u een kwadratische vergelijking oplost, moet u de waarden van de constanten hebben en oplossen voor x, wat altijd twee waarden oplevert, de 'wortels' genoemd. In Visual Basic kunt u een programma of functie schrijven die de gebruiker vraagt ​​om de a-, b- en c-waarden in te voeren, de wortels te vinden en vervolgens de waarden op de formulier.

Stap 1

Open een nieuw Visual Basic-programma. Dubbelklik op het gereedschap "Knop" om Button1 aan het formulier toe te voegen. Dubbelklik tweemaal op het gereedschap "Label" om Label1 en Label2 aan het formulier toe te voegen.

Video van de dag

Stap 2

Dubbelklik op "Button1" op het formulier om het codevenster te openen. Typ de volgende code:

Dim a As Decimal = InputBox("Voer A in: ") Dim b As Decimaal = InputBox("Voer B in: ") Dim c As Decimaal = InputBox("Voer C in: ") Kwadratisch (a, b, c)

De eerste drie regels vragen de gebruiker om de waarden van de constanten. Het roept dan een sub genaamd "Quadratic" aan en geeft de constanten door als argumenten.

Stap 3

Plaats de cursor buiten de Button1 sub. Typ de volgende code:

Privé Subkwadratisch (ByVal a As Decimaal, ByVal b As Decimaal, ByVal c As Decimaal) Dim wortels (1) As String Dim x1, x2, schijf As Decimaal schijf = b ^ 2 - 4 * a * c

De eerste regel maakt de kwadratische sub en accepteert drie argumenten. Het definieert vervolgens een array met twee items voor de twee wortels. Het creëert vervolgens drie decimale variabelen en wijst de waarde van de discriminant toe, die het aantal wortels bepaalt dat de kwadratische vergelijking heeft.

Stap 4

Typ de volgende code:

Als schijf >= 0 Dan is x1 = (-b + Math. Sqrt (schijf)) / (2 * a) x2 = (-b - Math. Sqrt (schijf)) / (2 * a) wortels (0) = x1.ToString-wortels (1) = x2.ToString Anders-wortels (0) = "(-" & b. ToString & "+Sqrt(" & schijf. ToString & "))/(2_" & a. ToString & ")" wortels (1) = "(-" & b. ToString & "-Sqrt(" & disc. ToString & "))/(2_" & a. ToString & ")" End If

De "if"-functie controleert of de waarde van de discriminant groter is dan of gelijk is aan nul, wat betekent dat de vergelijking één of twee wortels heeft. Het lost dan op voor x. Als de discriminant kleiner is dan nul, heeft de vergelijking geen echte wortels en wordt het gedeelte "anders" uitgevoerd, dat de complexe wortelvergelijkingen weergeeft.

Stap 5

Typ de volgende code:

Label1.Text = roots (0) Label2.Text = roots (1) End Sub

Deze regels code geven gewoon de wortels op de labels weer en sluiten vervolgens het codeblok van de Quadratic sub.

Stap 6

Sla het Visual Basic-programma op. Druk op "F5" om het uit te voeren.