📄 sinft.txt
字号:
Procedure SINFT(var Y:array of real; N:integer);
var
I,J,M,JJ:integer; THETA,WR,WI,WPR,WPI,WTEMP,Y1,Y2,SUM:real;
begin
THETA:=3.14159265358979 / N;
WR:=1;
WI:=0;
WPR:=-2 * Sqr(Sin(0.5 * THETA));
WPI:=Sin(THETA);
Y[1]:=0;
M:=N div 2;
For J:=1 To M do
begin
WTEMP:=WR;
WR:=WR * WPR - WI * WPI + WR;
WI:=WI * WPR + WTEMP * WPI + WI;
Y1:=WI * (Y[J + 1] + Y[N - J + 1]);
Y2:=0.5 * (Y[J + 1] - Y[N - J + 1]);
Y[J + 1]:=Y1 + Y2;
Y[N - J + 1]:=Y1 - Y2;
end;
REALFT(Y, M, 1);
Sum:=0;
Y[1]:=0.5 * Y[1];
Y[2]:=0;
For JJ:=1 To M do
begin
J:= 2 * JJ - 1;
SUM:=SUM + Y[J];
Y[J]:=Y[J + 1];
Y[J + 1]:=SUM;
end;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -