早教吧作业答案频道 -->其他-->
有一个数列前两项为1,从第三项开始,每一项均为前两项之和,求次数列第20个数.(用递归实现)OptionExplicitFunctionfact(n)AsDoubleDima(n)AsSingle,i%Fori=1To2a(i)=1NextiFori=3To20a(i)=a(i-
题目详情
有一个数列前两项为1,从第三项开始,每一项均为前两项之和,求次数列第20个数.(用递归实现)
Option Explicit
Function fact(n) As Double
Dim a(n) As Single, i%
For i = 1 To 2
a(i) = 1
Next i
For i = 3 To 20
a(i) = a(i - 1) + a(i - 2)
Next i
fact = a(i)
End Function
Private Sub Command1_Click()
Dim n As Integer, m As Double
m = fact(n)
Label1.Caption = m
End Sub
请问那里出现错误,急需解决
Function fact(n) As Double
If n > 3 Then
fact = fact(n - 2) + fact(n - 1)
Else
fact = 1
End If
End Function
Private Sub Command1_Click()
Dim n As Integer, m As Double
n = Val(Text1.Text)
If n < 0 Then
Exit Sub
End If
m = fact(n)
Label1.Caption = m
End Sub
Option Explicit
Function fact(n) As Double
Dim a(n) As Single, i%
For i = 1 To 2
a(i) = 1
Next i
For i = 3 To 20
a(i) = a(i - 1) + a(i - 2)
Next i
fact = a(i)
End Function
Private Sub Command1_Click()
Dim n As Integer, m As Double
m = fact(n)
Label1.Caption = m
End Sub
请问那里出现错误,急需解决
Function fact(n) As Double
If n > 3 Then
fact = fact(n - 2) + fact(n - 1)
Else
fact = 1
End If
End Function
Private Sub Command1_Click()
Dim n As Integer, m As Double
n = Val(Text1.Text)
If n < 0 Then
Exit Sub
End If
m = fact(n)
Label1.Caption = m
End Sub
▼优质解答
答案和解析
Function fact(n) As Double
If n > 2 Then
fact = fact(n - 2) + fact(n - 1)
Else
fact = 1
End If
End Function
Private Sub Command1_Click()
Dim n As Integer,m As Double
n = Val(Text1.Text)
If n < 0 Then
Exit Sub
End If
m = fact(n)
Label1.Caption = m
End Sub
If n > 2 Then
fact = fact(n - 2) + fact(n - 1)
Else
fact = 1
End If
End Function
Private Sub Command1_Click()
Dim n As Integer,m As Double
n = Val(Text1.Text)
If n < 0 Then
Exit Sub
End If
m = fact(n)
Label1.Caption = m
End Sub
看了有一个数列前两项为1,从第三项...的网友还看了以下:
已知a和b是有理数且a不等于b化简2/1(a=b-|a-b|将1,2,3.100个自然数,任意分为 2020-04-06 …
有5和7两个数,现在规定,将黑板上任意两个数相加的和写在黑板上.问:经过若干次操作后,黑板能否出现 2020-04-26 …
x和y各是一个两位数,现在把y写在x的右面组成一个四位数,请用x和y表示出这个四位数 2020-04-27 …
C语言:编写一个函数,在数函数中调用它时,每次实现不同的功能编写一个函数,在数函数中调用它时,每次 2020-05-15 …
x和y各是一个两位数.现在把y写在x的右面组成一个四位数,请用x和y表示出这个四位数 2020-05-19 …
如果x是一个三位数,y是个两位数,现在把数字x放在y的右边,得到一个五位数,用代数式表示为 2020-05-19 …
有68个数排成一排,除头尾两个数外,每个数的3倍恰好等于它两边两个数之和.经分析发现,这些数除以6 2020-07-15 …
若n表示一个两位数,现在把1放在它的右边得到一个三位数,可表示为(),若把1放在n的左边,则得的三 2020-07-16 …
黑板上写着11和13这两个数,现在进行操作:(1)将某个数重写一遍,(2)将两个数相加,写上和数.试 2020-11-03 …
如图,将0,1,2,3,4,5,6分别填入这个算式内()乘以()=()=()除以(),每个数字只出现 2020-12-09 …