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

Описать структуру «комплексное число» - C++

Восстановить пароль Регистрация
 
Dinara_rakipova
0 / 0 / 0
Регистрация: 30.04.2013
Сообщений: 13
05.06.2013, 14:20     Описать структуру «комплексное число» #1
Помогите, пожалуйста!Работа со структурами в с++
Описать структуру «комплексное число» (действительная часть (re), мнимая часть (im)). Определить функцию, выполняющую произведение двух комплексных чисел.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pakisan
14 / 14 / 1
Регистрация: 04.01.2013
Сообщений: 61
05.06.2013, 16:37     Описать структуру «комплексное число» #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
#include <iostream>
#include <fstream>
 
 
struct  number
{
public:
    int im; // Мнимая часть
    int re; // Действительная часть
    number(int x,int y) { im=y;re=x; } 
};
 
number operator+(number &obj1, number &obj)
{
    obj1.im+=obj.im;
    obj1.re+=obj.re;
    return obj1;
}
 
std::ostream &operator<<(std::ostream &out, number obj)
{
    out<<obj.re<<' '<<obj.im;
    return out;
}
 
int main()
{
    number n(4,3),n1(3,5);
    n1+n;
    std::cout<<n1;
    std::cout<<"end";
    return 0;
}
Dinara_rakipova
0 / 0 / 0
Регистрация: 30.04.2013
Сообщений: 13
07.06.2013, 18:39  [ТС]     Описать структуру «комплексное число» #3
Описать структуру «комплексное число» (действительная часть (re), мнимая часть (im)). Определить функцию, выполняющую произведение двух комплексных чисел.
Проверте пожалуйста программу: правильно ли она работает. Что означают строчки вроде "number operator+(number &obj1, number &obj)" ?)Заранее спасибо)

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
#include <iostream>
#include <fstream>
 
 struct  number
{
public:
    int im; // Мнимая часть
    int re; // Действительная часть
    number(int x,int y) { im=y;re=x; } 
};
 
number operator+(number &obj1, number &obj)
{
    obj1.im+=obj.im;
    obj1.re+=obj.re;
    return obj1;
}
 
std::ostream &operator<<(std::ostream &out, number obj)
{
    out<<obj.re<<' '<<obj.im;
    return out;
}
 
int main()
{
    number n(4,3),n1(3,5);
    n1+n;
    std::cout<<n1;
    std::cout<<"end";
    return 0;
}
Expocooky
 Аватар для Expocooky
56 / 56 / 2
Регистрация: 06.06.2013
Сообщений: 112
07.06.2013, 18:42     Описать структуру «комплексное число» #4
Эти ваши строчки означают перегрузку операторов. В вашем случае, сложения и вывода

В мэйне результат сложения ничему не присваивается?
MarVaL
С++ Beginner
 Аватар для MarVaL
116 / 116 / 16
Регистрация: 28.02.2013
Сообщений: 246
07.06.2013, 20:57     Описать структуру «комплексное число» #5
Цитата Сообщение от Expocooky Посмотреть сообщение
Эти ваши строчки означают перегрузку операторов. В вашем случае, сложения и вывода

В мэйне результат сложения ничему не присваивается?
Ссылка на первый объект возвращается

Добавлено через 53 секунды
т.е. смысл возвращать ссылку?) Всё равно результат в obj1

Добавлено через 2 минуты
Или семантика перегрузки оператора+ такая

Добавлено через 2 минуты
Хотя нет проверил, с void работает не возвращая ссылки.
Yandex
Объявления
07.06.2013, 20:57     Описать структуру «комплексное число»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru