{$B-} program CIDFT (input,output); {} { } { w } { } { u t F v | v } { } { w F E } { } { w F Q O r r P R Q U } { } { w F C w } { } { w w F w w } { } { F U I t t [ G } { } { g p F o } { } { F P X W T N P Q } { } {} { 錾 } type ZISU= array[0..99] of real; var n,k : integer; pREAL,pIMAG,VALREAL,VALIMAG: ZISU; { EXTERNAL procedure IDFT ( pREAL,pIMAG:ZISU; n:integer; var VALREAL,VALIMAG:ZISU ); } {$I B:IDFT.SRC} { C v O } begin write(lst,'Input vector'); writeln(lst); read(n); readln; write(lst,' n=',n); writeln(lst); for k:=0 to n-1 do begin read(pREAL[k],pIMAG[k]); readln; write(lst,' ',pREAL[k],'+(',pIMAG[k],'*i)'); writeln(lst) end; IDFT(pREAL,pIMAG,n,VALREAL,VALIMAG); writeln(lst); writeln(lst); write(lst,'Output vector [INVERSE DISCRETE FOURIER TRANSFORM]'); writeln(lst); for k:=0 to n-1 do begin write(lst,' ',VALREAL[k],'+(',VALIMAG[k],'*i)'); writeln(lst) end end.