
%off nat;
on rounded;




n:=5;


N := 5


operator a,f,ff;



for all ii such that ii<0 or ii>n-1 let a(ii)=0;


for all ii,jj let f(ii)*f(jj)=f(ii+jj);


for all ii let f(ii)*f(ii)=f(ii+ii);


f(0):=1;


F(0) := 1


for ii:=-10:20 do write(a(ii));


0

0

0

0

0

0

0

0

0

0

A(0)

A(1)

A(2)

A(3)

A(4)

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0


%-------------A-----------
%for ii:=0:(n-1) do a(ii):=0; a(7):=100;

%-------------fft procedure-----------
procedure ffft(y,x);
begin

for uu:=0:(n-1) do <<

write( y(uu) := for tt:=0:(n-1) sum x(tt)*f(tt*uu) )

>>;
end;


FFFT

%-----------------------------------

%-------------fft inverse procedure-----------
procedure inffft(y,x);
begin

for uu:=0:(n-1) do <<

write( y(uu) := for tt:=0:(n-1) sum x(tt)*f(-tt*uu) )

>>;
end;


INFFFT
