首页 > 试驾测评 > 正文

VB 计算e的x次方(vb函数大全)

2023-11-21 10:22:46 | 寻车网

今天寻车网小编整理了VB 计算e的x次方(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 计算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 计算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 计算e的x次方(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。在代码窗口里粘贴如下代码:PrivateSubcmdCalc_Click()Dimk,bAsLongk=txtk.Textb=txtb.TextIftxtx.Text="x"ThenMsgBox

2023-11-01 23:50:21
当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
汽车价格现在如何计算 汽车优惠点数怎么算的
汽车价格现在如何计算 汽车优惠点数怎么算的

汽车优惠点数怎么算的优惠点数=(厂家指导价-销售价格)÷厂家指导价×100%。汽车销售价格会低于厂家指导价,就是优惠点数,汽车优惠点数通常是指汽车销售价格与厂家指导价之间的差额,通常以百分比计算。例如,某汽车的厂家指导价为10万元,销售价格为9万元,则该车的优惠点数为:(10万元-9万元)÷10万元×100%=10%。怎么计算车的落地价格落地价=裸车价+裸车价的11.55%+420

2023-09-13 02:48:33
车贷计算器在线计算器:让汽车贷款计算变得更加简单 买车计算器在线计算 车贷计算方法
车贷计算器在线计算器:让汽车贷款计算变得更加简单 买车计算器在线计算 车贷计算方法

车贷计算器在线计算器:让汽车贷款计算变得更加简单汽车贷款已经成为了很多人购买车辆的主要方式之一。但是在选择贷款方案之前,我们需要先计算出每月的还款额、贷款总额、利息等信息。而这些数据需要用到一款好用的车贷计算器。在这篇文章中,我们将为大家介绍几款优秀的在线计算器,让你在计算汽车贷款时更加轻松便捷。一、中国人民银行贷款计算器中国人民银行的贷款计算器是一款十分全面的在线计算器,可以帮

2023-11-17 01:45:07
欧拉到底代表什么?那个以欧拉命名的函数类型具体表示什么意思?那个欧拉函数公式有有哪些用处?哪些方面
欧拉到底代表什么?那个以欧拉命名的函数类型具体表示什么意思?那个欧拉函数公式有有哪些用处?哪些方面

所有学生的噩梦,“数学之王”欧拉究竟有多牛?如果要说起中国数学从小学到大学知识点的最大贡献者,相比非欧拉莫属。欧拉是天生奇才,对,他不仅仅是在数学方面的奇才,是所有领域都能精通。他的人生就连小说都不敢这么写,实在是太过于逆天。9岁,他就把牛顿的《自然哲学的数学原理》看完了,13岁就考入巴塞尔大学一开始是主修哲学和法律,这在当时轰动了数学界,欧拉是这所大学,也是整个瑞士大学校园里

2023-11-10 15:31:35
大众迈腾算什么档次的车
大众迈腾算什么档次的车

本文目录一览:1、迈腾B9实车曝光,配贯穿尾灯+三大屏,换第四代EA8882、全新一代大众迈腾谍照曝光,外观换新颜,更侧重立体层次感3、大众迈腾算什么档次的车迈腾B9实车曝光,配贯穿尾灯+三大屏,换第四代EA888随着比亚迪汉、特斯拉Model3等新能源中型轿车的强势进攻,曾经“德系双雄”一骑绝尘的局面早已不再,于是,大众也即将推出纯电B级车——ID.7VIZZION,但

2023-10-19 04:13:01
油耗怎么算 如何计算油耗 3种方法来计算油耗
油耗怎么算 如何计算油耗 3种方法来计算油耗

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

2023-10-06 19:27:06