資源簡介
注意:實驗報告不全,參考價值:函數實現。
1.1 用C++實現復數類,并為其定義必要的運算符。
struct Complex{
double real_;
double image_;
Complex (void);
Complex (double const& real);
Complex (double const& real, double const& imag);
Complex (Complex const& v);
Complex operator+ (Complex const& a) const;
Complex operator- (Complex const& a) const;
Complex operator* (Complex const& a) const;
Complex operator/ (int n) const;
……
};
1.2 void fft (Comples* dst, Complex* src, int p);快速傅里葉變換。
求復數數組src[0, 2p)的傅里葉變換,結果存放在dst[0, 2p)中。
1.3 void ifft(Complex* dst, Complex* src, int p); 快速傅里葉逆變換。
求復數數組src[0, 2p)的逆傅里葉變換,結果存放在dst[0, 2p)中。
1.4 利用快速傅里葉變換計算長整數乘法。
typedef std::vector Integer;
void multiply( Integer* rst, Integer const& a, Integer const& b);
假設向量 a[0, n) 表示一個長整數:
其中 2≤β≤256 為基底,函數將兩個長整數 a, b 相乘,結果放在*rst 向量中。
利用上面的長整數乘法程序計算結果
(123456789ABCDEF)16 256^500×(FEDCBA987654321)16 256^500
(987654321)10 10^800×(123456789)10 10^800
代碼片段和文件信息
- 上一篇:計算機圖形學實驗 圖形函數庫
- 下一篇:漢明碼7,4
評論
共有 條評論