Форум программистов, компьютерный форум CyberForum.ru

Шаблон класса для работы с комплексными числами - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Заполнить двумерный массив http://www.cyberforum.ru/cpp-beginners/thread1010197.html
Помогите исправить код. Мне надо что-бы массив состоял не только из положительных или отрицательных чисел. А из отрицательных и положительных. За ранее спасибо. srand(time(o)); int x; int n, m; cout << "Введите кол-во строк:\t\t"; cin >> n; cout << "Введите кол-во столбцов:\t";
C++ Лишние биты при считывании файла Нужно порциями по 63 байта считать текст из файла. "in" - мой открытый файл для чтения. Вот отрывок из кода fseek(in, 0, SEEK_END); //конец файла int Len = ftell(in);//получаем размер fseek(in, 0, SEEK_SET);//ставим курсор в начальное положение char temp;//буфер int porc=63;//размер порции (блока) while (!feof(in))//выполнять, пока не конец файла { for (int a=0; a<porc; a++)... http://www.cyberforum.ru/cpp-beginners/thread1010192.html
C++ "Вращение" массива
Поделитесь мыслями, как можно, скажем, в массиве 5 х 5 осуществить перестановку элеменов так, словно мы его повернули на 90/180/270 градусов? Я тут набросал свой вариант, поделюсь, если вы поделитесь своим)
Массив с++ C++
Здравствуйте, уважаемые форумчане. Хочу попросить у вас помощи:
C++ Умножение по значению в ComboBox'e http://www.cyberforum.ru/cpp-beginners/thread1010188.html
Ребята, помогите осуществить умножение по значению в ComboBox'e. Мне нужно, чтобы цена товара умножалась в зависимости от его количества. Как нужно изменить код, чтобы получилось цена доумножалась на выбраное значение ComboBox? Вот код: { // Here calculation of all summ
C++ как написать звездочками имя c++ как написать звездочками имя премерно так *** * * *** *** *** * * * * * * * * * * * *** *** * * *** *** ** * * * * * * * * * * * *** * *** *** *** * * подробнее

Показать сообщение отдельно
stima
430 / 285 / 16
Регистрация: 22.03.2011
Сообщений: 929
Завершенные тесты: 1
18.11.2013, 19:39     Шаблон класса для работы с комплексными числами
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#include <iostream>
 
// шаблонный класс для работы с комплексными числами
template <class T>
class Complex {
 
    // обьявления входного потока, как друга данного класса
    // для доступа к закрытым полям
    template<typename U>
    friend std::istream& operator>>(std::istream&, Complex<U>&);
 
public:
    // Перегруженный конструктор, принимающий 2 аргумента:
    // реальную и мнимую часть комплексного числа
    // explicit - указание на то, что данный конструктор не может
    // быть вызван неявными преобразованиями
    explicit Complex(const T& Re = T(), const T& Im = T());
 
    // Перегруженные операторы + и -
    // Принимают константный обьект типа Complex и
    // возвращают копию обьекта Complex,
    // при этом данные методы не изменяют состояние обьекта
    Complex operator+(const Complex&) const;
    Complex operator-(const Complex&) const;
 
    // Возврат реальной и мнимой части
    // при этом данные методы не изменяют состояние обьекта
    T Re() const { return _Re; }
    T Im() const { return _Im; }
 
private:
    // Реальная и мнимая часть
    T _Re;
    T _Im;
};
 
template <class T>
Complex<T>::Complex(const T& Re, const T& Im)
    : _Re(Re), _Im(Im)
{
}
 
template <class T>
Complex<T> Complex<T>::operator+(const Complex<T>& other) const
{
    return Complex<T>(_Re + other._Re, _Im + other._Im);
}
 
template< class T >
Complex<T> Complex<T>::operator-(const Complex<T>& other) const
{
    return Complex<T>(_Re - other._Re, _Im - other._Im);
}
 
template <class T>
std::ostream& operator<<(std::ostream& out, const Complex<T>& obj)
{
    return out << "Re = " << obj.Re() << "  Im = " << obj.Im();
}
 
template <class T>
std::istream& operator>>(std::istream& in, Complex<T>& obj)
{
    return in >> obj._Re >> obj._Im;
}
 
int main()
{
    Complex<int> a, b;
 
    std::cout << "Enter two complex numbers (should be: Re Im) " << std::endl;
    std::cin >> a >> b;
 
    std::cout << "First number is : " << a << std::endl;
    std::cout << "Second number is : " << b << std::endl;
 
    std::cout << "Sum is: " << a + b << std::endl;
    std::cout << "Diff is: " << a - b << std::endl;
 
    std::cin.get();
 
    return 0;
}
 
Текущее время: 14:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru