首页 > 试驾测评 > 正文

VB解方程 VB 计算e的x次方 vb函数大全

2023-11-01 23:50:21 | 寻车网

VB解方程 VB 计算e的x次方 vb函数大全相关内容,小编在这里做了整理,希望能对大家有所帮助,关于VB解方程 VB 计算e的x次方 vb函数大全信息,一起来了解一下吧!

本文目录一览:

VB解方程 VB 计算e的x次方 vb函数大全

VB解方程

解一元一次方程:
设置4个文本框,分别代表一元一次方程中的参数k,b,x,y
分别命名txtk,txtb,txtx,txty.计算按钮命名为cmdCalc。
在代码窗口里粘贴如下代码:

Private Sub cmdCalc_Click()
Dim k, b As Long
k = txtk.Text
b = txtb.Text
If txtx.Text = "x" Then
MsgBox "x的值为:" & (txty.Text - b) / k
ElseIf txty.Text = "y" Then
MsgBox "y的值为:" & k * txtx.Text + b
End If
End Sub

计算时求x则在txtx那里输入一个x,
求y则在txty那里输入一个y,
在各文本框中输入参数,
然后按下按钮,
就有提示框弹出,显示结果。

一元二次方程:
privat sub command1_click()
dim a,b,c,x1,x2,d as sigle
a=val(textl.text)
b=val(text2.text)
c=val(text3.text)
d=b^2-4*a*c
if d>0 then
x1=(-b+sqr(d))/(2*a)
x2=(-b-sqr(d))/(2*a)
else if d=0 then
x1=(-b/2*a)
x2=x1
else msgbox"方程没有实根"
end if

text4.text="x1=" & x1 & "" & "x2=" & x2
end sub

sub min(byref a() as integer)
dim i,j as interger
for i=1 to 9
for j=i+1 to 10
if a a(i)>a(j) then
t=a(j)
a(i)=a(j)
a(j)=t
end if
next
next
end sub

private sub command_(click)
dim b(1 to 10) as interger
dim a(1 to 10) as interger
randomize

for i=1 to 10
a(i)=int(rnd*90)+10
list1.additem a(i)
b(i)=int(rnd*90)+ 10
list2.additem b(i)
next
call min(a)
call min(b)

if a(1)<b(1) then
m=a(1)
else
m=b(1)
end if
text1.text="A,B种的最小值:" & vbcrlf & m
end sub

一元三次方程:
针对方程"ax^3+bx^2+cx+d=0"的求根程序。
控件只需一个Command1,结果显示在“立即”中。
代码如下。(参考)
========================
Private Sub Command1_Click()

Dim x1r As Double, x1i As Double, x2r As Double, x2i As Double, x3r As Double, x3i As Double
Dim ret As String
Const eq = "ax^3+bx^2+cx+d=0"
a = InputBox("请输入a", eq)
b = InputBox("请输入b", eq)
c = InputBox("请输入c", eq)
d = InputBox("请输入d", eq)
ret = CubicEquation(a, b, c, d, x1r, x1i, x2r, x2i, x3r, x3i) '5x^3+4x^2+3x-12=0

Debug.Print "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" & ret
Debug.Print x1r; " + "; x1i; " i"
Debug.Print x2r; " + "; x2i; " i"
Debug.Print x3r; " + "; x3i; " i"

End Sub

Private Function CubicEquation _
(ByVal a As Double, ByVal b As Double, ByVal c As Double, ByVal d As Double, _
x1r As Double, x1i As Double, x2r As Double, x2i As Double, x3r As Double, x3i As Double) As String
'Cubic equation(v2.2), coded by www.dayi.net btef (please let this line remain)
Dim e As Double, f As Double, g As Double, h As Double, delta As Double
Dim r As Double, sita As Double, pi As Double, rr As Double, ri As Double

If a = 0 Then
CubicEquation = "Not a cubic equation: a = 0"
Exit Function
End If

'pi = 3.14159265358979
pi = 4 * Atn(1)
b = b / a 'simplify to a=1: x^3+bx^2+cx+d=0
c = c / a
d = d / a
e = -b ^ 2 / 3 + c 'substitute x=y-b/3: y^3+ey+f=0
f = (2 * b ^ 2 - 9 * c) * b / 27 + d

If e = 0 And f = 0 Then
x1r = -b / 3
x2r = x1r
x3r = x1r
CubicEquation = "3 same real roots:"
ElseIf e = 0 Then 'need to deal with e = 0, or it will cause z = 0 later.
r = -f 'y^3+f=0, y^3=-f
r = Cur(r)
x1r = r - b / 3 'a real root
If r > 0 Then 'r never = 0 since g=f/2, f never = 0 there
sita = 2 * pi / 3
x2r = r * Cos(sita) - b / 3
x2i = r * Sin(sita)
Else
sita = pi / 3
x2r = -r * Cos(sita) - b / 3
x2i = -r * Sin(sita)
End If
x3r = x2r
x3i = -x2i
CubicEquation = "1 real root and 2 image roots:"
Else 'substitute y=z-e/3/z: (z^3)^2+fz^3-(e/3)^3=0, z^3=-g+sqr(delta)
g = f / 2 '-q-sqr(delta) is ignored
h = e / 3
delta = g ^ 2 + h ^ 3
If delta < 0 Then
r = Sqr(g ^ 2 - delta)
sita = Argument(-g, Sqr(-delta)) 'z^3=r(con(sita)+isin(sita))
r = Cur(r)
rr = r - h / r
sita = sita / 3 'z1=r(cos(sita)+isin(sita))
x1r = rr * Cos(sita) - b / 3 'y1=(r-h/r)cos(sita)+i(r+h/r)sin(sita), x1=y1-b/3
sita = sita + 2 * pi / 3 'no image part since r+h/r = 0
x2r = rr * Cos(sita) - b / 3
sita = sita + 2 * pi / 3
x3r = rr * Cos(sita) - b / 3
CubicEquation = "3 real roots:"
Else 'delta >= 0
r = -g + Sqr(delta)
r = Cur(r)
rr = r - h / r
ri = r + h / r
If ri = 0 Then
CubicEquation = "3 real roots:"
Else
CubicEquation = "1 real root and 2 image roots:"
End If
x1r = rr - b / 3 'a real root
If r > 0 Then 'r never = 0 since g=f/2, f never = 0 there
sita = 2 * pi / 3
x2r = rr * Cos(sita) - b / 3
x2i = ri * Sin(sita)
Else 'r < 0
sita = pi / 3
x2r = -rr * Cos(sita) - b / 3
x2i = -ri * Sin(sita)
End If
x3r = x2r
x3i = -x2i
End If
End If

End Function

Private Function Cur(v As Double) As Double

If v < 0 Then
Cur = -(-v) ^ (1 / 3)
Else
Cur = v ^ (1 / 3)
End If

End Function

Private Function Argument(a As Double, b As Double) As Double
Dim sita As Double, pi As Double

'pi = 3.14159265358979
pi = 4 * Atn(1)
If a = 0 Then
If b >= 0 Then
Argument = pi / 2
Else
Argument = -pi / 2
End If
Else

sita = Atn(Abs(b / a))

If a > 0 Then
If b >= 0 Then
Argument = sita
Else
Argument = -sita
End If
ElseIf a < 0 Then
If b >= 0 Then
Argument = pi - sita
Else
Argument = pi + sita
End If
End If

End If

End Function

二元一次方程:
Dim a, b, c As Integer
Dim x, y As Single
Dim d As Double

a = Val(InputBox("输入二次项系数"))
b = Val(InputBox("输入一次项系数"))
c = Val(InputBox("输入常数项"))

d = b ^ 2 - 4 * a * c
If d < 0 Then
MsgBox "方程无解"
ElseIf d = 0 Then
x = -b / (2 * a)
MsgBox "方程有一个解:" & x
Else
x = (-b + Sqr(d)) / (2 * a)
y = (-b - Sqr(d)) / (2 * a)
MsgBox "方程有两个解:" & x & "和" & y
End If

三元一次方程:

方程组如下,
ax+by+cz=d
a'x+b'y+c'z=d'
a"x+b"y+c"z=d"
其中x,y,z为未知数,a,a',a",b,b',b",c,c',c",d,d',d",为用户输入的数值

解N元一次方程,indat为N+1行、N列的数组,outdat为N个元素的数组
Public Sub 解方程(ByRef InDat() As Double, ByVal InDatCount As Long, ByRef OutDat() As Double, ByRef OutDatCount As Long)
Dim Xt() As Double
Dim Dt As Double
Dim Ss As Long
Dim OtSCount As Long
Dim XtOut() As Double
If InDatCount > 1 Then
ReDim Xt(1 To InDatCount - 1, 1 To InDatCount) As Double
For j = 1 To InDatCount - 1 '行
For i = 2 To InDatCount + 1 '列
Xt(j, i - 1) = InDat(j, i) * InDat(InDatCount, 1) / InDat(1, 1) - InDat(InDatCount, i)
Next i
Next j
OtSCount = 0
解方程 Xt, InDatCount - 1, XtOut, OtSCount
Dt = 0
For i = 1 To InDatCount - 1
Dt = Dt + InDat(InDatCount, i + 1) * XtOut(i)
Next i
Dt = Dt + InDat(InDatCount, i + 1)
ReDim Preserve OutDat(1 To 1 + OtSCount) As Double
OutDat(1) = -Dt / InDat(InDatCount, 1)
For i = 2 To OtSCount + 1
OutDat(i) = XtOut(i - 1)
Next i
OutDatCount = 1 + OtSCount
Else
ReDim OutDat(1 To 1) As Double
If InDat(1, 1) <> 0 Then
OutDat(1) = -InDat(1, 2) / InDat(1, 1)
Else
OutDat(1) = 0
End If
OutDatCount = 1
End If
End Sub

VB解方程 VB 计算e的x次方 vb函数大全

VB 计算e的x次方

vb提供了指数函数:exp(x),就是用来计算e的x次方的。
所以代码可以简化为:
Private Sub Form_Click()
Dim x As Integer, a As Double
x = Val(InputBox("请输入X的值"))
a=exp(x)
Print "e^x =" & a
End Sub

答案补充:
错误在于对Loop While x ^ n / jc(n) < 0.000001的理解,while是当……的时候继续循环,所以你的循环执行了一次,,这时候,因为新增值大于允许误差而提前结束了循环。在第一次循环里,因为n=1,阶乘结果也是1,导致整数结果。
修改:将循环条件的逻辑运算符倒过来,或者将while换成until。

另外,这样的计算仍存在缺陷,就是溢出!当n=13的时候,n!就会溢出。导致出错,所以,在循环条件里再加一个关于n的。

综合以上,代码可以写为:
Private Sub Form_Click()
Dim x As Integer, a As Double
x = Val(InputBox("请输入X的值"))
a = 1
Do
n = n + 1
新值 = x ^ n / jc(n)
a = a + 新值
Loop While 新值 > 0.000001 And n < 11
Print "e^x =" & a
End Sub

Function jc(n)
Dim i As Integer, f As Long
f = 1
For i = 1 To n
f = f * i
Next i
jc = f
End Function

VB解方程 VB 计算e的x次方 vb函数大全

vb函数大全

VB中 字符串 函数包含: mid、instr、InStrRev、left、right、ucase、lcase、trim、string

space、strconv、len、ltrim、rtirm、split()、join()、srereverse、replaceFilterMonthName

Format、LSet、RSet、FormatCurrency、FormatDateTime、FormatNumber

FormatPercent、StrComp、StrConv、StrReverse、WeekdayName、Option Compare

扩展资料:

一、基础字符串函数部分(必须要掌握)

1,len函数返回 Long,其中包含字符串内字符的数目,或是存储一变量所需的字节数。 寻车网

2,Left函数返回 Variant (String),其中包含字符串中从左边算起指定数量的字符

3,Right函数返回 Variant (String),其中包含从字符串右边取出的指定数量的字符

4,Mid函数返回 Variant (String),其中包含字符串中指定数量的字符。

5,LTrim、RTrim与 Trim 函数

返回 Variant (String),其中包含指定字符串的拷贝,没有前导空白 (LTrim)、尾随空白 (RTrim) 或前导和尾随空白 (Trim)。

以上就是VB解方程 VB 计算e的x次方 vb函数大全全部内容了,了解更多相关信息,关注寻车网。
与“VB解方程 VB 计算e的x次方 vb函数大全”相关推荐
VB 计算e的x次方(vb函数大全)
VB 计算e的x次方(vb函数大全)

VB计算e的x次方vb提供了指数函数:exp(x),就是用来计算e的x次方的。所以代码可以简化为:PrivateSubForm_Click()DimxAsInteger,aAsDoublex=Val(InputBox("请输入X的值"))a=exp(x)Print"e^x="&amp;aEndSub答案补充:错误在于对LoopWhilex^n/jc(n)

2023-11-21 10:22:46
当m是什么整数时,关于x的一元二次方程mx 2 -4x+4=0与x 2 -4mx+4m 2 -4m-5=0的解都是整数
当m是什么整数时,关于x的一元二次方程mx 2 -4x+4=0与x 2 -4mx+4m 2 -4m-5=0的解都是整数

在区间(1,2)上,不等式-x2-mx-4<0有解,则m的取值范围为()A.m>-4B.m<-4C.m>-5D.m<-5-x^2-mx-4&lt;0mx&gt;-x^2-4m&gt;-x-4/x=-(x+4/x)在(1,2)上,f(x)=x+4/x是单调递减的,最大值是f(1)=1+4/1=5;∴-(x+4/x)的最小值是-5若不等式有解,只需m&gt;-(x+4/x)的

2023-11-20 11:43:31
车贷计算器最新2013 车贷计算方法
车贷计算器最新2013 车贷计算方法

车贷计算方法贷款计算公式:1。本息还款法,即在贷款期内每月等额偿还贷款本息。月还款额=贷款本金×月利率×(1+月利率)还款月数/[(1+月利率)还款月数-1];2.平均资本偿还法(用利息还清本金的方法),即每月等额偿还贷款本金,贷款利息随本金逐月递减。月还款额=贷款本金/贷款期限月数+(本金-已还本金累计额)×月利率。扩展信息:车贷是指贷款人向申请买车的借款人发放的贷款。汽车消费

2023-12-06 02:19:50
汽车保险费用计算 汽车保险费怎么算(了解汽车保险费计算方法,避免不必要的损失)
汽车保险费用计算 汽车保险费怎么算(了解汽车保险费计算方法,避免不必要的损失)

汽车保险计算方法(了解如何计算汽车保险费用)汽车保险是每个车主必须购买的一项保险,它可以为车主的车辆提供保障,一旦发生意外事故,车主可以获得相应的赔偿。但是,每个车主的保险费用都不一样,因为保险公司会根据车主的车辆情况、车主的个人情况以及保险公司的政策等因素来计算保险费用。本文将详细介绍汽车保险的计算方法。第一步:确定保险类型汽车保险分为两种类型:第三者责任险和商业险。第三者责

2023-10-08 13:14:07
油耗怎么算 如何计算油耗 3种方法来计算油耗
油耗怎么算 如何计算油耗 3种方法来计算油耗

如何计算油耗3种方法来计算油耗目录方法1:计算单次油耗1、首先,油耗的计算公式是“里程除以使用的油量”。2、加满油后把“行程里程表”归零。3、在下一次加油之前,先记录里程表的里程数。4、把车一直开到几乎没油。5、记下加油量。6、用里程数除以油量,算出汽车的油耗。7、我们来用一个例子练习计算。方法2:计算平均油耗1、要记住,油耗会根据驾驶情况而变化。2、连续记录几个满箱油的油耗来得出平均油耗。

2023-10-06 19:27:06
车贷利息怎么计算方法
车贷利息怎么计算方法

车贷利息怎么计算方法计算车贷年利息,可以用这个公式:车贷年利息=车贷本金×车贷年利率。一般知道车贷本金和车贷年利率就可以算出车贷年利率,两者都在车贷合同中写明。比如车贷本金10万元,年利率8%,则年利率等于车贷本金×车贷年利率=10万元×8%=8000元。扩展信息:车贷是指贷款人向申请买车的借款人发放的贷款。汽车消费贷款是银行向在其特约经销商处购买汽车的购车者提供人民币担保贷款的

2023-12-16 14:56:14
一吨油涨价100元1升涨多少钱?哪位大神讲解一下换算方程式
一吨油涨价100元1升涨多少钱?哪位大神讲解一下换算方程式

一吨油涨价100元1升涨多少钱?哪位大神讲解一下换算方程式一吨油涨价100元1升涨多少钱?吨是重量,升是体积。两者的换算需要有比重。汽油的比重是0.70-0.78.按平均值0.74计算。1吨油=1000/0.74=1351升。100/1351=7.4分。答:每升涨价7.4分。现在92号汽油多少钱一吨5500每吨。92号汽油的密度为0.755,由体积=

2023-12-09 21:48:54
汽车购置税计算方法 汽车购置税怎么计算
汽车购置税计算方法 汽车购置税怎么计算

汽车购置税怎么计算【太平洋汽车网】2020年汽车购置税计算方法:车辆购置税=车辆不含税价格*车辆购置税税率,现在车辆购置税税率为10%,增值税税率为13%。所以具体计算公式:车辆购置税税额=车辆含税价格/1.13*10%。汽车购置税计算公式:应纳税额=初次办理纳税申报时确定的计税价格&amp;times;;(1-使用年限×10%)×10%-已纳税额使用年限的计

2023-10-04 17:29:57