当前位置:首页 » 编程软件 » 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

热点内容
rmijava 发布:2025-09-18 08:38:26 浏览:18
sql软件和服务器怎么连接 发布:2025-09-18 08:27:47 浏览:937
手机java模拟器 发布:2025-09-18 07:13:29 浏览:416
linux线程的栈大小 发布:2025-09-18 07:09:42 浏览:633
废旧电脑做linux服务器 发布:2025-09-18 07:06:50 浏览:263
终端配置怎么写 发布:2025-09-18 06:44:42 浏览:804
ftp手机登陆 发布:2025-09-18 06:43:04 浏览:767
emc存储800电话 发布:2025-09-18 06:32:49 浏览:964
c语言编程与设计 发布:2025-09-18 06:09:15 浏览:724
2016年预算法 发布:2025-09-18 06:07:05 浏览:625