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

Класс в С++ - C++

Восстановить пароль Регистрация
 
Frost_Dead
Сообщений: n/a
17.09.2012, 23:31     Класс в С++ #1
реализовать с помощью класса динамический массив комплексных чисел:
-выделить память под динамический массив комплексных чисел;
-ввод комплексных чисел в массив;
-вывод на экран;
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Topotun
87 / 46 / 7
Регистрация: 16.09.2012
Сообщений: 192
18.09.2012, 01:53     Класс в С++ #2
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
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 Complex::operator + (Complex &c) // перегрузка оператора сложения  
{  
Complex temp;  
   
temp.re = re + c.re;  
temp.im = im + c.re;  
   
return temp;  
}  
   
Complex Complex::operator - (Complex &c) // перегрузка оператора вычитания  
{  
Complex temp;  
   
temp.re = re - c.re;  
temp.im = im - c.re;  
   
return temp;  
}  
   
Complex Complex::operator * (Complex &c) // перегрузка оператора умножения
{  
Complex temp;  
   
temp.re = re*c.re;  
temp.im = re*c.im;  
   
return temp;
}  
   
Complex 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 &, Complex ); // перегрузка оператора <<
friend istream &operator>>(istream &, Complex ); // перегрузка оператора >>
   
};
   
ostream &operator<<(ostream &out, Complex c)
{
out << "(" << c.re << ") + I (" << c.im << ")";
 
return out;
}
 
istream &operator>>(istream &in, Complex c)
{
in >> c.re >> c.im;
 
return in;
}
Далее в мейне создаёшь массив комплексных чисел, инициализируешь его и выводишь.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
18.09.2012, 04:17     Класс в С++ #3
Topotun, конструктор по умолчанию - это: Complex() {};
Topotun
87 / 46 / 7
Регистрация: 16.09.2012
Сообщений: 192
18.09.2012, 07:39     Класс в С++ #4
ну да, а там конструктор с параметрами..писал на скорую руку, возможны ошибки)
Frost_Dead
Сообщений: n/a
18.09.2012, 09:46     Класс в С++ #5
а нельзя это все с помощью конструкторов сделать, т.е конструктор для ввода, вывода, выделения памяти и так далее.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
18.09.2012, 09:48     Класс в С++ #6
Frost_Dead, А вы просто почитайте что такое конструктор - и ответите на свой вопрос.
Yandex
Объявления
18.09.2012, 09:48     Класс в С++
Ответ Создать тему
Опции темы

Текущее время: 01:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru