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

Работа с функциями в классе комплексных чисел - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ нелинейные уравнения методом ньютона (с Паскаля в С++) http://www.cyberforum.ru/cpp-beginners/thread1311085.html
есть код в Паскале. помогите перевести в С++. program Newtons_method; uses crt; var a,b,c,E,sol,xp,x:real; n:integer; function f(u:real):real; begin
C++ Тесты Привет всем к вам просьба кто может вот вопрос 7 Вопрос 7 Когда происходит динамическое связывания ответ а во время связоования ответ B во воремя инкапсуляции ответ С во время камиляции http://www.cyberforum.ru/cpp-beginners/thread1311084.html
C++ Определить, возрастают ли монотонно числа в заданной последовательности
{ int a={1,8,56,98,25,-9,45,64,17,5,79}; for (int k = 0; k < 12; k++) { bool swaped=false; for (int i = 0; i < 12-1; i++) { if (a>a) { swaped =true;
C++ Реализовать произвольное сильноветвящееся дерево
Помогите реализовать произвольное сильноветвящееся дерево и основные функции .
C++ Повышение производительности программы http://www.cyberforum.ru/cpp-beginners/thread1311054.html
Добрый вечёр. У меня вопрос. Предопложим у нас есть масив: int numbers; чтобы обратиться к елементу масива используем numbers но во время компиляции с++ переводит такое обращение в обращение *(numbers+n).Вопрос. если воспользоватся в программе вторым способом (тоесть компилятор уже не будет внутренне обращатся к указателям) то повишается производительность программы? или просто быстрей...
C++ Очередь как однанаправленные линейный список целых чисел задана максимальная длина очереди -N функции: Помогите решить задачу!Заранее благодарен. Очередь как однанаправленные линейный список целых чисел задана максимальная длина очереди -N функции: поместить значение в очередь( функцию добавлять значение в конец списка) выбрать значение из очереди ( функцию возращает значение из начала списка и удаляет его из списка) длина очереди( функция возвращает количество элементов списке) ... подробнее

Показать сообщение отдельно
Raisa17
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 20
11.12.2014, 15:26  [ТС]     Работа с функциями в классе комплексных чисел
Помогите пожалуйста переделать программу в С++ Билдер с программы написанной с помощью структуры на программу, написанную с помощью класса. Была бы весьма благодарна

Тип данных задается классом. Член-данные класса - одна частная переменная структурного типа, члены-функции класса - открытые неоператорные функции init(), input(), output(), toPChar() и функции доступа setStruct(), getStruct() или setVar(), getVar().

5. Комплексное число задается парой действительных чисел (a, b), где a - действительная часть, b - мнимая часть. Реализовать тип TComplex для работы с комплексными числами. Обязательно наличие функций:
сложение add(), (a, b) + (c, d);
вычитание sub(), (a, b) - (c, d);
умножение mul(), (a, b) * (c, d);
деление div(), (a, b) / (c, d);
сравнение equ(), (a, b) = (c, d);
сопряженное число conj(a, b).


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
#include<iostream.h>
#include<vcl.h>
#include<iomanip.h.>
 
struct TComplex{
int a;
int b;
 
 
void input();
};
 
void TComplex::input(){
cout<<"a=";
cin>>a;
cout<<"b=";
cin>>b;
}
 
int check(TComplex &ob){
if(ob.a==0 || ob.b==0){
return 0;}
return 1;
}
 
TComplex add(TComplex a, TComplex b){
TComplex c;
{ c.a=(a.a+b.a);
c.b=a.b+b.b;
return (c);
}
}
 
TComplex sub(TComplex a, TComplex b){
TComplex c;
{ c.a=(a.a-b.a);
c.b=a.b-b.b;
return (c);
}
}
 
TComplex mul(TComplex a, TComplex b){
TComplex c;
c.a= 0;
c.b=0;
{ c.a=(a.a*b.a-a.b*b.b);
c.b=a.a*b.b+a.b*b.a;}
return (c);
}
 
TComplex div(TComplex a, TComplex b){
TComplex c; TComplex d;
{
c.a=((a.a*b.a-a.b*b.b)/((b.a*b.a)+(b.b*b.b)));
c.b=((a.b*b.a-a.a*b.b)/((b.a*b.a)+(b.b*b.b)));
//{if (c.b==0) cout<<"Delenie na nol"<<endl;
//else
//c.a= c.a/c.b;
return (c);
}
//}
}
int equ(TComplex a, TComplex b){
if(a.a==b.a && a.b==b.b){return 0;}
return 1;
}
 
TComplex conj(TComplex a, TComplex b){
TComplex c;
c.a= 0;
c.b=0;
{ c.a=a.b*(-1);
c.b=b.b*(-1);}
return (c);
}
 
void main(){
TComplex a, b, c;
 
a.input();
cout<<"----"<<endl;
b.input();
 
if  ( ! check(a) ) cout<<"Vvedeno nekorectni danni"<<endl;
if
( ! check(b) ) cout<<"Vvedeno nekorectni danni"<<endl;
 
c=add(a,b);
cout<<c.a<<" "<<c.b<<endl;
c=sub(a,b);
cout<<c.a<<" "<<c.b<<endl;
c=mul(a,b);
cout<<c.a<<" "<<c.b<<endl;
c=div(a,b);
if (c.b==0) {cout<<"Delenie na nol"<<endl;}
else
cout<<c.a<<"/"<<c.b<< "="<< c.a/c.b<<endl;
if  ( ! equ(a,b) ) cout<<"Sovpadauyt`"<<endl ;
else
 cout<<"NE Sovpadauyt`"<<endl;
c=conj(a,b);
cout<<a.a<<c.a<<endl;
cout<<b.a<<c.b<<endl;
 
system
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru