当前位置:首页 » 编程软件 » vb编程阶乘

vb编程阶乘

发布时间: 2023-05-13 05:28:24

❶ 怎么写vb的阶乘代码

1、For语句蔽缓实现

Private Sub Command1_Click()

Dim s As Long, n As Integer, i As Integer

培并氏 n = Val(Text1.Text)

s = 1

For i = 1 To n

s = s * i

Next i

Label4.Caption = Str(s)

End Sub

2、Do While语句实现

Private Sub Command1_Click()

Dim s As Long, n As Integer, i As Integer

n = Val(Text1.Text)

s = 1

i = 1

配散 Do While i <= n

s = s * i

i = i + 1

Loop

Label4.Caption = Str(s)

End Sub

(1)vb编程阶乘扩展阅读:

1~10的阶乘的结果如下:

1!=1

2!=2*1=2

3!=3*2*1=6

4!=4*3*2*1=24

5!=5*4*3*2*1=120

6!=6*5*4*3*2*1=720

7!=7*6*5*4*3*2*1=5040

8!=8*7*6*5*4*3*2*1=40320

9!=9*8*7*6*5*4*3*2*1=362880

10!=10*9*8*7*6*5*4*3*2*1=3628800

❷ VB阶乘的算法

求阶乘的两种算法

方法一(计数循环)

使用For语句。

Function Factorial(n As Integer) As Long
On Error GoTo Hander
Dim i As Long
Factorial = 1

For i = n To 1 Step -1
Factorial = Factorial * i
Next i

Exit Function

Hander:
MsgBox "数值过大!", vbExclamation, "Error"
Resume Next

End Function

方法二(递归)

简单地说,递归就是一个过程调用过程本身。
思路为:n! = n * (n-1)!

Function Factorial(n As Integer) As Long
On Error Goto Hander

If n > 0 Then
Factorial = n * Factorial(n - 1)
Else
Factorial = 1
End If
Exit Sub

Hander:
Msgbox "数值过大!",vbExclamation,"Error"
Resume Next

End Function

例如,当 n=5 时,求 Factorial(5) 的值变为 5 * Factorial(4)。而 Factorial(4) 又可变为 4 * Factorial(3) ......,Factorial(2)又可变为 2 * Factorial(1),这时 Factorial(1) = 1 已知,递归调用停止,其执行结果为 5 * 4 * 3 * 2 * 1,即 5! 。

过程中还是用了错误陷阱(On Error...),以防数值过大发生溢出错误。

❸ VB编程,求阶乘的过程

VB求阶乘需要Function 过程来实现。

Function 语句,声明 Function 过程的名称,参数以及构成其主体的代码空局。

以下是求输入数的阶乘代码:

OptionExplicit
DimSumAsDouble
DimNAsInteger
DimiAsInteger

PrivateFunctionfact(NAsInteger)AsDouble
fact=1
则亏凯DoWhileN>0
fact=fact*N
N=N-1
孙唤Loop
EndFunction

PrivateSubCommand1_Click()
N=Val(Text1.Text)
Sum=fact(N)
Text2=Sum
EndSub

PrivateSubForm_Load()
Text1="":Text2=""
EndSub

❹ VB 计算阶乘

PrivateSub乎亩拿Form_Click()
DimpAsLong,nAsInteger,iAsInteger
p=1
n=Val(InputBox("input耐老n",,5))
Fori=1To岁搭n
p=p*i
Next
Printp


EndSub

❺ vb编程求n的阶乘

DimsAsDouble,nAsInteger
n=Val(InputBox("请输入n值,不要罩茄太大哦,否则出错"))
s=1
DoWhilen>袜拆1
s=s*n
n=物好察n-1
Loop
MsgBox"这个数的阶乘为"&s

❻ vb如何输入阶乘

'给你一禅察个轿袭喊自定义函数
Function cjhs(a As Long) As Long
cjhs = 1
For i = 1 To a
cjhs = cjhs * i
Next
End Function
Private Sub Command1_Click()
'引用方法
't等闭野于3的阶乘
t = cjhs(3)
End Sub

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:724
制作脚本网站 发布:2025-10-20 08:17:34 浏览:990
python中的init方法 发布:2025-10-20 08:17:33 浏览:699
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:855
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:756
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1097
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:329
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:205
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:895
python股票数据获取 发布:2025-10-20 07:39:44 浏览:854