📄 four1.txt
字号:
Sub FOUR1(DATA(), NN, ISIGN)
N = 2 * NN
J = 1
For I = 1 To N Step 2
If J > I Then
TEMPR = DATA(J)
TEMPI = DATA(J + 1)
DATA(J) = DATA(I)
DATA(J + 1) = DATA(I + 1)
DATA(I) = TEMPR
DATA(I + 1) = TEMPI
End If
M = N / 2
While M >= 2 And J > M
J = J - M
M = M / 2
Wend
J = J + M
Next I
MMAX = 2
While N > MMAX
ISTEP = 2 * MMAX
THETA = 6.28318530717959 / (ISIGN * MMAX)
WPR = -2# * Sin(0.5 * THETA) ^ 2
WPI = Sin(THETA)
WR = 1#
WI = 0#
For M = 1 To MMAX Step 2
For I = M To N Step ISTEP
J = I + MMAX
TEMPR = CSng(WR) * DATA(J) - CSng(WI) * DATA(J + 1)
TEMPI = CSng(WR) * DATA(J + 1) + CSng(WI) * DATA(J)
DATA(J) = DATA(I) - TEMPR
DATA(J + 1) = DATA(I + 1) - TEMPI
DATA(I) = DATA(I) + TEMPR
DATA(I + 1) = DATA(I + 1) + TEMPI
Next I
WTEMP = WR
WR = WR * WPR - WI * WPI + WR
WI = WI * WPR + WTEMP * WPI + WI
Next M
MMAX = ISTEP
Wend
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -