13. Příklad na podmíněné příkazy a matematické funkce – kořeny kvadratické rovnice
Přidal/a Jarda dne November 14 2010 19:06:47

V tomto příkladu využijeme známý vzorec pro výpočet kořenů kvadratické rovnice:



Stejně jako my bude program počítat jen tehdy, když bude diskriminant kladný nebo nulový. V opačném případě bude vypsáno hlášení, že daná rovnice nemá řešení.


Vzhled aplikace – jeho vytvoření, úprava formuláře
PictureBox: obohatíme formulář o obrázek – v našem případě jako obrázek budou sloužit vzorce kvadratické rovnice a obrázek pejska. Nastavením vlastnosti Image nastavíme název souboru s obrázkem, který hodláme načíst. Vlastnost Visible určuje, má-li být viditelný při spuštění obrázku. (V tomto případě True)
SizeMode: Normal – obrázek zústane ve své skutečné velikosti, StretchImage – obrázek se přizpůsobí zadaným rozměrů


Zdrojový kód aplikace
Dim A As Single
Dim B As Single
Dim C As Single
Dim D As Single
Dim X1 As Double
Dim X2 As Double
A = Val(txtA.Text)
B = Val(txtB.Text)
C = Val(txtC.Text)
D = B ^ 2 - (4 * A * C)
If D >= 0 Then
X1 = (-B + (D ^ (1 / 2))) / (2 * A)
X2 = (-B - (D ^ (1 / 2))) / (2 * A)

txtX1.Text = X1
txtX2.Text = X2
Else
MsgBox("Nemá řešení")
End If


Je určitě zřejmé, co program dělá.



Kód dále doplníme o část, která ošetřuje případ, kdy zadáme za koeficient A nulu – tím pádem neřešíme kvadratickou, ale lineární rovnici!!


If D >= 0 Then
If A <> 0 Then
X1 = (-B + (Sqrt(D))) / (2 * A)
X2 = (-B - (Sqrt(D))) / (2 * A)

txtX1.Text = X1
txtX2.Text = X2
Else
X1 = (-C / B)
txtX1.Text = X1
MsgBox("Není to kvadratická rovnice")
End If
Else
MsgBox("Nemá řešení")
End If




A takto vypadá spuštěný program:


Úkoly:
Vytvořte samostatně výše uvedený program.