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

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

Войти
Регистрация
Восстановить пароль
 
КсенияСергеевна
0 / 0 / 0
Регистрация: 07.09.2009
Сообщений: 45
#1

дописать 2 перегруженных оперотора(+,-) - C++

20.09.2009, 09:40. Просмотров 357. Ответов 9
Метки нет (Все метки)

Вот код, в него нужно дописать 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
#include "stdafx.h"
#include <iostream>
using namespace std;
 
class Complex
{
    private:
        int im;
        int re;
 
    public:
        Complex():im(0), re(0) {}
        Complex(int x, int y) {im = x; re = y; }
        
        void SetIM(int x) { im = x; }
        void SetRE(int x) { re = x; }
        void Get(){cout<<re<<"+"<<im<<"*i"<<endl;}
 
        void SetM(int m,int k){re=m;im=k;}
 
        void copy(Complex w){re=w.re; im=w.im;}
 
 
};
 
int main()
{   
    Complex a;
    Complex b(5, 9);
 
    a.Get();
    b.Get();
 
    cout << endl;
 
    Complex c;
    c.SetIM(7);
    c.SetRE(5);
 
    Complex d(c);
 
    c.Get();
    d.Get();
 
int m,k;
cout<<"vvedite m=";
cin>>m;
cout<<"vvedite k=";
cin>>k;
b.SetM(m,k);
b.get();
 
a.copy(b);
a.Get();
 
int l;
cin>>l;
 
 
 
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.09.2009, 09:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос дописать 2 перегруженных оперотора(+,-) (C++):

Создание перегруженных функций - C++
Написать перегруженную функцию, которая возвращает сумму двух целых чисел, трех целых чисел, двух слов

Реализация перегруженных функций - C++
Нужна помощь по реализации перегруженных функций: int func (int * arr, int length, int number); int func (char * str, char ch); ...

Импорт из dll перегруженных операторов - C++
Здравствуйте, уважаемые программисты! По заданию необходимо при явном подключении dll импортировать класс. С обычными методами все...

Написать реализацию перегруженных функций - C++
Написать реализацию перегруженных функций: double func (int * arr, int length); double func (double * arr, int length); Функция...

Написать реализацию перегруженных функций - C++
Написать реализацию перегруженных функций: int func (double * arr, int length); int func (char * str);

Наведите пожалуйста примеры перегруженных функций в с++ - C++
Я примерно понимаю , что такое перегруженная функция(одно имя , но разное количество или тип параметров ) . Наведите пожалуйста какие-то...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
20.09.2009, 10:05 #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
#include "stdafx.h"
#include <iostream>
using namespace std;
 
class Complex
{
private:
int im;
int re;
 
public:
Complex():im(0), re(0) {}
Complex(int x, int y) {im = x; re = y; }
 
void SetIM(int x) { im = x; }
void SetRE(int x) { re = x; }
void Get(){cout<<re<<"+"<<im<<"*i"<<endl;}
 
/* Добавил 2 метода */
int GetIM(void) { return im; }
int GetRE(void) { return re; }
 
void SetM(int m,int k){re=m;im=k;}
 
void copy(Complex w){re=w.re; im=w.im;}
 
Complex operator +(Complex A, Complex B){
    Complex res;
    res.SetM(A.GetRE+B.GetRE, A.GetIM+B.GetIM);
           return res;
}
 
Complex operator -(Complex A, Complex B){
    Complex res;
    res.SetM(A.GetRE-B.GetRE, A.GetIM-B.GetIM);
           return res;
}
 
};
 
int main()
{ 
//...
return 0;
}
КсенияСергеевна
0 / 0 / 0
Регистрация: 07.09.2009
Сообщений: 45
20.09.2009, 10:09  [ТС] #3
Спасибо....
а в главной функции разве ничего писать не надо...

вроде нужно непосредственно само сложение и вычитание..

и из них вроде ниодного дружественного..
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
20.09.2009, 10:16 #4
%)))))))
Надо) думаю сама справишься) Дружественного и правда нет %) не заметил сразу
КсенияСергеевна
0 / 0 / 0
Регистрация: 07.09.2009
Сообщений: 45
20.09.2009, 10:20  [ТС] #5
Complex summ;
summ=А+В;
summ.Get();

в таком виде их описывать в гл. функции??или ещё что-то??

Добавлено через 41 секунду
и допиши пожалуйста дружественную..
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
20.09.2009, 10:26 #6
Писал с колена
C++
1
2
3
4
5
6
friend Complex operator -(Complex A, Complex B){
        Complex res;
        res.re = A.re-B.re;
        res.im = A.im-B.im;
        return res;
}
КсенияСергеевна
0 / 0 / 0
Регистрация: 07.09.2009
Сообщений: 45
20.09.2009, 10:30  [ТС] #7
а описание то правильное??
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
20.09.2009, 10:31 #8
C++
1
2
3
4
5
6
int main(){
        Complex a(1,2), b(2,4), c;
        c = a+b;
        c.Get();
        return 0;
}
КсенияСергеевна
0 / 0 / 0
Регистрация: 07.09.2009
Сообщений: 45
20.09.2009, 10:33  [ТС] #9
Спасибо,большое!!
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
20.09.2009, 11:29 #10
Итог
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
#include "stdafx.h"
#include <iostream>
using namespace std;
 
class Complex
{
friend Complex operator -(Complex A, Complex B){
        Complex res;
        res.re = A.re-B.re;
        res.im = A.im-B.im;
        return res;
}
 
private:
int im;
int re;
 
public:
Complex():im(0), re(0) {}
Complex(int x, int y) {im = x; re = y; }
 
void SetIM(int x) { im = x; }
void SetRE(int x) { re = x; }
void Get(){cout<<re<<"+"<<im<<"*i"<<endl;}
 
/* Добавил 2 метода */
int GetIM(void) { return im; }
int GetRE(void) { return re; }
 
void SetM(int m,int k){re=m;im=k;}
 
void copy(Complex w){re=w.re; im=w.im;} 
};
 
Complex operator +(Complex A, Complex B){
        Complex res;
        res.SetM(A.GetRE()+B.GetRE(), A.GetIM()+B.GetIM());
        return res;
}
 
int main()
{ 
        Complex a(1,2), b(2,4), c;
        c = a+b;
        c.Get();
        return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.09.2009, 11:29
Привет! Вот еще темы с ответами:

Нужны примеры реализаций перегруженных функций - C++
Скиньте мне примеры реализаций перегруженных функций написаные в фомах (Form) кому не жалко буду благодарен или хоть пример наведите как...

Неоднозначный вызов перегруженных функций sin и pow - C++
помогите. библиотека math.h подключена. когда в теле програмы пишу: f1=cos(pow(x,2))*sin(2*x-1)+4.29; выкидывает ошибки: ...

Среднее геометрическое с использованием перегруженных функций и шаблонов - C++
Уважаемые форумчане, помогите написать программу: Нужно разработать программу определяющую среднее геометрическое для заданного набора...

Операции над комплексными числами с использованием перегруженных операций - C++
Написать программу, выполняющую операции над комплексными числами, используя перегруженные операции.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
20.09.2009, 11:29
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru