導航:首頁 > 編程語言 > vb編程求一元二次方程

vb編程求一元二次方程

發布時間:2022-05-02 04:30:16

Ⅰ 用VB怎麼編一元二次方程計算

創建text1,text2,text3
dim a,b,c,x1,x2 '聲明變數
val(text1.text)=a
val(text2.text)=b
val(text3.text)=c '給變數賦值
if b^2-4ac>=0 then
x1=(-b+sqr(b^2-4ac))/2a
x2=(-b-sqr(b^2-4ac))/2a '利用求根公式計算
print "方程的解為:" & x1 & ";" & x2
else
print "方程沒有實數解"
end if '判斷並輸出結果

Ⅱ VB 解一元二次方程程序設計

vb代碼如下:

Private Sub Command1_Click()
Dim a As Single, b As Single, c As Single
Dim d As Single, x1 As Single, x2 As Single
a = InputBox("請輸入一元二次方程的系數a")
b = InputBox("請輸入一元二次方程的系數b")
c = InputBox("請輸入一元二次方程的系數c")
If a = 0 Then
a = InputBox("因為a≠0,你輸入的a=0,請重新輸入系數a")
End If
d = b * b - 4 * a * c
If d >= 0 Then
x1 = (-b + Sqr(d)) / (2 * a)
x2 = (-b - Sqr(d)) / (2 * a)
Print "系數為"; a; b; c; "的一元二次方程的根分別為"; x1
Print "系數為"; a; b; c; "的一元二次方程的根分別為"; x2
Else
Print "此方程在實數范圍內無解"
End If
End Sub

一、按鈕「求一元二次方程」的vb代碼如下:
Private Sub Command1_Click()
a = Text1.Text
b = Text2.Text
c = Text3.Text
d = b * b - 4 * a * c
If d >= 0 Then
X1 = (-b + Sqr(d)) / (2 * a)
X2 = (-b - Sqr(d)) / (2 * a)
Label4.Caption = X1
Label5.Caption = X2
Else
Label4.Caption = "在實數范圍內無解"
End If
End Sub

二、按鈕「重置」的vb代碼如下:
Private Sub Command2_Click()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Label4.Caption = ""
Label5.Caption = ""
End Sub

三、按鈕「退出」的vb代碼如下:
Private Sub Command3_Click()
End
End Sub

特殊例子(指定系數c的值為5):

在窗體「Form1.frm」的「Command1_click「事件中編寫代碼(請不要隨便更改其它代碼),使之能夠實現如下功能:在Text1輸入整數a、、Text2輸入b,判斷一元二次方程ax2+bx+5=0有無實數根。並在Text3文本框中顯示判斷結果,即有實數根則在Text3文本框中輸出「有」,否則輸出「無」。

VB程序代碼如下:

Private Sub Command1_Click()
dim a as single,b as single
a = Text1.Text
b = Text2.Text
d = b * b - 4 * a * 5
If d >= 0 Then
Text3.Text="有"
Else
Text3.Text="無"
End If
End Sub

如果不用dim定義變數,則上面的輸入部分語句改為下面的語句,這樣可以把字元變數類型轉化為數值類型:
a =val(Text1.Text)
b =val(Text2.Text)

樓主.給你寫這么呢多你不給加點分嗎?= =||

Ⅲ 用vb編寫一個一元二次方程

在窗口上新建一個按鈕,代碼如下:
Private Sub Command1_Click()
Dim a As Single
Dim b As Single
Dim c As Single
Dim x As Single
Dim y As Single
a = Val(InputBox("請輸入a", "參數a"))
b = Val(InputBox("請輸入b", "參數b"))
c = Val(InputBox("請輸入c", "參數c"))
x = Val(InputBox("請輸入x", "參數x"))
y = a * x ^ 2 + b * x + c
Print "y=" & a & "* " & x & "^2+" & b & "*" & x & "+" & c & "=" & y
End Sub

Ⅳ Vb 中,計算解一元二次方程,代碼如下 Dimaassingle,bassingle

修改後的代碼如下:

Dim a As Single, b As Single, c As Single, x1 As Single, x2 As Single
a = Val(Text1.Text): b = Val(Text2.Text): c = Val(Text3.Text)
If b ^ 2 - 4 * a * c >= 0 Then
x1 = (-b + Sqr(b ^ 2 - 4 * a * c)) / (2 * a)
x2 = (-b - Sqr(b ^ 2 - 4 * a * c)) / (2 * a)
Text4.Text = "原方程的解為x1=" & x1 & " x2 = " & x2
Else
x1 = -b / 2 + Sqr(4 * a * c - b ^ 2)
x2 = -b / 2 - Sqr(4 * a * c - b ^ 2)
Text4.Text = "原方程的復數解為x1=" & x1 & " x2=" & x2
End If

出錯的原因:1、除數為0,估計中間可能a賦值為0了。
2、某一步的計算結果超出了定義的single范圍,即負數范圍是從 -3.402823*E38 到 -1.401298*E-45,正數從1.401298*E-45 到 3.402823*E38,和 0。如二樓所說,在范圍不確定的時候定義為double好一點。

Ⅳ 關於vb編程 解一元二次方程

Private Sub Command1_Click()
Dim a As Integer, b As Integer, c As Integer, d As Integer

a = Val(Text1.Text)
b = Val(Text2.Text)
c = Val(Text3.Text)
d = b * b - 4 * a * c

If d < 0 Then
Label4.Caption = "此方程無解"
ElseIf d = 0 Then
Label4.Caption = "此方程有兩個相等的根,x1=" & Str(-b / (2 * a))
'x=[-b]/2a
ElseIf d > 0 Then
Label4.Caption = "此方程有兩個不相等的根,x1=" & Str(Round((-b + Sqr(d)) / (2 * a), 0)) _
& " x2=" & Str(Round((-b - Sqr(d)) / (2 * a), 0))

End If

End Sub
張志晨

Ⅵ 用VB編寫求一元二次方程的代碼是什麼

'求一元二次方程的跟ax^2+bx+c=0
Private Sub Command1_Click()
Dim a#, b#, c#, gen#
a = InputBox("輸入A的值")
b = InputBox("輸入B的值")
c = InputBox("輸入C的值")
If a = 0 And b = 0 And c = 0 Then
Print "x的值是全體實數."
ElseIf a = 0 And b = 0 And c <> 0 Then
Print "x的值不存在!"
ElseIf a = 0 And b <> 0 Then
Print "x1的值是"; (-c / b)
ElseIf a <> 0 And (b ^ 2 - 4 * a * c) >= 0 Then
gen = (b ^ 2 - 4 * a * c) ^ 0.5
Print "x1的值是"; ((-b - gen) / (2 * a))
Print "x2的值是"; ((-b + gen) / (2 * a))
ElseIf a <> 0 And (b ^ 2 - 4 * a * c) < 0 Then
Print "x的值不存在!"
End If
End Sub

Ⅶ VB程序編程:畫出求一元二次方程的流程圖

以下是畫一元二次方程的圖的代碼:(假設y=a*x^2+b*x+c,將窗口的大小調為4800×4800)
Private Sub Command1_Click()
Cls
Line (0, 2400)-(4800, 2400), RGB(255, 0, 0)
Line (2400, 0)-(2400, 4800), RGB(255, 0, 0)
Dim x
Dim xx
Dim y
Dim yy
Dim a
Dim b
Dim c
a = InputBox("請輸入二次項系數(a)", "錄入")
b = InputBox("請輸入一次項系數(b)", "錄入")
c = InputBox("請輸入常數項(c)", "錄入")
For x = -4800 To 4800 Step 0.5
y = a * x ^ 2 + b * x + c
xx = x + 2400
yy = -y + 2400
PSet (xx, yy), RGB(0, 0, 255)
Next x
End Sub

Private Sub Form_Activate()
Line (0, 2400)-(4800, 2400), RGB(255, 0, 0)
Line (2400, 0)-(2400, 4800), RGB(255, 0, 0)
End Sub

基於計算機的計算能力問題,畫出來的圖可能不準確,如果代入a=0的話就會畫出直線,就可以說明我的代碼是正確的了

Ⅷ 用VB控制台應用程序編寫一元二次方程

請把問題說完整一些……
如果只是要一元二次方程的結果 那麼 比如 需要 X^2+x+5 的結果,那麼 這么做
加一個 text 加一個command
輸入如下代碼
Private Sub Command1_Click()
Dim x As Integer
x = Val(Text1.Text)
MsgBox x * x + x + 5
End Sub
然後在 text1中輸入 數字 點 command1 就算出來了

Ⅸ 求解一元二次方程的程序vb

直接將代碼復制到窗體中測試即可Private Sub Form_Load()
Dim a, b, c, x1, x2 As Single
Dim str As String
a = Val(InputBox("請輸入一元二次方程的二次項系數"))
b = Val(InputBox("請輸入一元二次方程的一次項系數"))
c = Val(InputBox("請輸入一元二次方程的常數項"))
If a = 0 Then
If c < 0 Then
str = b & "x" & c & "=0"
Else
str = b & "x+" & c & "=0"
End If
If MsgBox("你輸入的方程為" & str & ",是否要求解?", vbOKCancel) = vbOK Then
If b = 0 Then
MsgBox "此方程無解!"
Else
x1 = -c / b
MsgBox "方程只有一個解,x=" & x1
End If
End If
Else
If b < 0 Then
If c < 0 Then
str = a & "x^2" & b & "x" & c & "=0"
Else
str = a & "x^2" & b & "x+" & c & "=0"
End If
Else
If c < 0 Then
str = a & "x^2+" & b & "x" & c & "=0"
Else
str = a & "x^2+" & b & "x+" & c & "=0"
End If
End If
If MsgBox("你輸入的方程為" & str & ",是否要求解?", vbOKCancel) = vbOK Then
If b ^ 2 - 4 * a * c < 0 Then
MsgBox "方程" & str & "無解!"
Else
If b ^ 2 - 4 * a * c = 0 Then
x1 = (-b + Sqr(b ^ 2 - 4 * a * c)) / (2 * a)
MsgBox "方程" & str & "有兩個相等的解,x1=" & x1 & ",x2=" & x1
Else
x1 = (-b + Sqr(b ^ 2 - 4 * a * c)) / (2 * a)
x2 = (-b - Sqr(b ^ 2 - 4 * a * c)) / (2 * a)
MsgBox "方程" & str & "有兩個不相等的解,x1=" & x1 & ",x2=" & x2
End If
End If
End If End If
End
End Sub

Ⅹ 求一元二次方程ax^2+bx+c=0的根.用VB語言怎麼編

Private Sub Command1_Click()
Dim A As Single,B As Single,C As Single
Dim R1 As Single,R2 As Single
A = Val(Text1.Text)
B = Val(Text2.Text)
C = Val(Text3.Text)
If B ^ 2 - 4 * A * C < 0 Then
MsgBox "該方程無解."
ElseIf B ^ 2 - 4 * A * C = 0 Then
R1 = -B / 2 / A
MsgBox "該方程僅有一個根為" & R1 & "."
Else
R1 = (-B + Sqr(B ^ 2 - 4 * A * C)) / (2 * A)
R2 = (-B - Sqr(B ^ 2 - 4 * A * C)) / (2 * A)
MsgBox "該方程有兩個根分別為" & R1 & "和" & R2 & "."
End If
End Sub

閱讀全文

與vb編程求一元二次方程相關的資料

熱點內容
grub2命令行 瀏覽:618
無法獲取加密卡信息 瀏覽:774
雲伺服器網卡充值 瀏覽:509
編程就是軟體 瀏覽:49
伺服器如何添加許可權 瀏覽:437
引用指針編程 瀏覽:851
手機加密日記本蘋果版下載 瀏覽:63
命令行括弧 瀏覽:176
java程序升級 瀏覽:490
排序演算法之插入類 瀏覽:227
gcccreate命令 瀏覽:73
海爾監控用什麼app 瀏覽:64
系統盤被壓縮開不了機 瀏覽:984
linuxredis30 瀏覽:541
狸窩pdf轉換器 瀏覽:696
ajax調用java後台 瀏覽:905
活塞式壓縮機常見故障 瀏覽:614
break演算法 瀏覽:731
換電池的app是什麼 瀏覽:771
單片機ad采樣快速發送電腦 瀏覽:22