c++ complex類(lèi)如何實(shí)現(xiàn)復(fù)數(shù)運(yùn)算

c++
小樊
84
2024-09-10 14:20:15

C++中的complex類(lèi)是一個(gè)模板類(lèi),用于表示和操作復(fù)數(shù)。它在<complex>頭文件中定義。要使用complex類(lèi),首先需要包含該頭文件。

以下是一些基本的復(fù)數(shù)運(yùn)算示例:

#include<iostream>
#include<complex>

int main() {
    // 創(chuàng)建兩個(gè)復(fù)數(shù)
    std::complex<double> c1(3, 4); // 3 + 4i
    std::complex<double> c2(1, 2); // 1 + 2i

    // 加法
    std::complex<double> sum = c1 + c2;
    std::cout << "Sum: "<< sum.real() << " + "<< sum.imag() << "i"<< std::endl;

    // 減法
    std::complex<double> diff = c1 - c2;
    std::cout << "Difference: "<< diff.real() << " + "<< diff.imag() << "i"<< std::endl;

    // 乘法
    std::complex<double> prod = c1 * c2;
    std::cout << "Product: "<< prod.real() << " + "<< prod.imag() << "i"<< std::endl;

    // 除法
    std::complex<double> quot = c1 / c2;
    std::cout << "Quotient: "<< quot.real() << " + "<< quot.imag() << "i"<< std::endl;

    return 0;
}

這個(gè)程序首先創(chuàng)建了兩個(gè)復(fù)數(shù)c1c2,然后對(duì)它們進(jìn)行加法、減法、乘法和除法運(yùn)算。最后,它將結(jié)果輸出到控制臺(tái)。

注意,complex類(lèi)的構(gòu)造函數(shù)接受兩個(gè)參數(shù),分別表示實(shí)部和虛部。此外,real()imag()成員函數(shù)分別返回復(fù)數(shù)的實(shí)部和虛部。

在上面的示例中,我們使用了double類(lèi)型來(lái)表示實(shí)部和虛部。你也可以使用其他浮點(diǎn)類(lèi)型,如floatlong double。只需將std::complex<double>替換為相應(yīng)的類(lèi)型即可。

0