С++ для начинающих


Класс complex


Класс комплексных чисел complex – еще один класс из стандартной библиотеки. Как обычно, для его использования нужно включить заголовочный файл:

#include <comp1ex>

Комплексное число состоит из двух частей – вещественной и мнимой. Мнимая часть представляет собой квадратный корень из отрицательного числа. Комплексное число принято записывать в виде

2 + 3i

где 2 – действительная часть, а 3i – мнимая. Вот примеры определений объектов типа complex:

// чисто мнимое число: 0 + 7-i

comp1ex< double > purei( 0, 7 );

// мнимая часть равна 0: 3 + Oi

comp1ex< float > rea1_num( 3 );

// и вещественная, и мнимая часть равны 0: 0 + 0-i

comp1ex< long double > zero;

// инициализация одного комплексного числа другим

comp1ex< double > purei2( purei );

Поскольку complex, как и vector, является шаблоном, мы можем конкретизировать его типами float, double и long double, как в приведенных примерах. Можно также определить массив элементов типа complex:

complex< double > conjugate[ 2 ] = {

    complex< double >( 2, 3 ),

    complex< double >( 2, -3 )

};

Вот как определяются указатель и ссылка на комплексное число:

complex< double > *ptr = &conjugate[0];

complex< double > &ref = *ptr;

Комплексные числа можно складывать, вычитать, умножать, делить, сравнивать, получать значения вещественной и мнимой части. (Более подробно мы будем говорить о классе complex в разделе 4.6.)



Содержание раздела