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

Класс комплексных чисел - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Программа работы с дробями (консоль) http://www.cyberforum.ru/cpp-beginners/thread162536.html
Десятичные дроби. Нужно чтобы программа умела: делить, умножать, складывать и вычитать и построена обязательно на классах, код не мой и разобраться в нём довольно трудно, плюс "консоль" что не мой конёк.... Вот код который у меня есть, но он не работает. Помогите кто чем может. P.S. Код был написан на MS Visual C++в отличие от привычного мне "Borland'a/CodeGear #include <iostream> #include...
C++ Наследование, классы, хеширование есть у кого простые задачи на эти темы? у меня задания нет, нужны любые... по поиску полазил- не нашёл ничего лёгкого=( http://www.cyberforum.ru/cpp-beginners/thread162517.html
Самоудаление программы C++
возможно ли, удаление самой себя проги сразу после запуска, на крайняк по окончанию работы, и как это осуществить?
Разбить на классы C++
Написала программу для игры в покер, но поскольку программировать я начала недавно, то забила все в один класс. Но получилось как-то не очень красиво и читать тяжеловато. Помогите пожалуйста разбить программку на 3 класса: Pack, On_hands и Prize. #include <iostream> #include <time.h> const int NotUsed=system("color 24"); using namespace std; class Pack {
C++ Скрыть программу http://www.cyberforum.ru/cpp-beginners/thread162463.html
Вот кусок кода который скрывает активные программы: HWND Wnd; Wnd=GetForegroundWindow(); if (Wnd>0) ShowWindow(Wnd,SW_HIDE);
C++ Как это читается (*r).sled r - > sled Между ними нет разницы подробнее

Показать сообщение отдельно
Andrew_Lvov
Эксперт С++
259 / 189 / 5
Регистрация: 19.08.2010
Сообщений: 760
Записей в блоге: 1
30.08.2010, 19:57
Используй <iostream>, без .h
Пиши либо std::cout, либо перед ф-цией main() напиши using std::cout;
C std::endl, std::istream, std::ostream аналогично.

Добавлено через 3 минуты
А, да. Укажи, каким компилятором и средой разработки пользуешься.

Добавлено через 5 минут
Complex::fn() при определении функции пишеться только извне класса.

Добавлено через 29 секунд
conio.h здесь не используется.

Добавлено через 12 минут
Вот
код
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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#include <iostream>
#include <math.h>
 
using namespace std;
 
 
class Complex // класс комплексных чисел
{
    double re, im; // целая и мнимая части
 
    // создаем конструкторы   
    public:
 
    Complex() {};
 
    Complex (double r) // конструктор по умолчанию
    {
        re = r; 
        im = 0;
    }
 
    Complex (double r, double i) // конструктор по умолчанию
    {
        re = r; 
        im = i;
    } 
 
    Complex (Complex &c) // конструктор копирования
    {
        re = c.re; 
        im = c.im;
    }
 
    ~Complex() {}
 
    float abs() // Модуль комплексного числа
    {
        return sqrt(re * re - im * im);
    }     
 
    Complex & operator = (Complex &c) // перегрузка оператора присваивания
    {
        re = c.re;
        im = c.im;
 
        return (*this);
    }
 
    Complex operator + (Complex &c) // перегрузка оператора сложения
    {
        Complex temp;
 
        temp.re = re + c.re;
        temp.im = im + c.re;
 
        return temp;
    }
 
    Complex operator - (Complex &c) // перегрузка оператора вычитания
    {
        Complex temp;
 
        temp.re = re - c.re;
        temp.im = im - c.re;
 
        return temp;
    }
 
    Complex operator * (Complex &c) // перегрузка оператора умножения
    {
        Complex temp;
 
        temp.re = re*c.re;
        temp.im = re*c.im;
 
        return temp;
    }
 
    Complex operator / (Complex &c) // перегрузка оператора деления
    {
        Complex temp;
 
        double r = c.re * c.re + c.im * c.im;
        temp.re = (re * c.re + im * c.im) / r;
        temp.re = (im * c.re - re * c.im) / r;
 
        return temp;
    }   
 
    friend ostream &operator<<(ostream &, const Complex &); // перегрузка оператора <<
    friend istream &operator>>(istream &, const Complex &); // перегрузка оператора >>
 
};
 
ostream &operator<<(ostream &out, const Complex &c)
{
    out << c.re;
    if( c.im > 0 )
        out << "+";
    out << c.im << "i";
 
    return out;
}
 
istream &operator>>(istream &in, const Complex &c)
{
    in >> c.re >> c.im;
 
    return in;
}
 
int main()
{
    Complex value1(5,2);
    Complex value2(3,-3);
 
    cout << value1 << "; " << value2 << endl;
 
    cout << value1 + value2 << endl;
 
    cout << value1 - value2 << endl;
 
    cout << value1 * value2 << endl;
 
    cout << value1 / value2 << endl;    
 
    value1 = value2;
 
    cout << value1 << " = " << value2 << endl;
 
    return 0;
}
, но лучше, если сначала попробуешь разобраться сам.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru