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

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

Войти
Регистрация
Восстановить пароль
 
molnia
7 / 7 / 1
Регистрация: 21.11.2008
Сообщений: 41
#1

[c++] Перегрузка операторов - C++

28.03.2010, 17:02. Просмотров 641. Ответов 1
Метки нет (Все метки)

Для заданных A = (A – a1, A, A + a2) и B = (B – b1, B, B + b2) Найти сумму
A + B = (A + B – a1 – b1, A + B, A + B + a2 + b2);

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 <conio.h>
#include <iostream.h>
 
struct FazzyNumber
{ double x;
  double x1,x2;
  void init(double x,double e1,double e2);
  };
 
 void FazzyNumber::init(double x,double e1,double e2)
 { x=x;
   x1=x-e1;
   x2=x+e2;
 }
 FazzyNumber operator+(FazzyNumber A,FazzyNumber B)
 { FazzyNumber rez;
   rez.x1=A.x+B.x-A.x1-B.x1;
   rez.x=A.x+B.x;
   rez.x2=A.x+B.x+A.x2+B.x2;
      return rez;
 }
 
int main()
{ FazzyNumber A,B,X;
  double x;
  double e1,e2;
  A.init(1.0,0.5,0.5);
  B.init(1.0,0.01,0.01);
  X=A+B;
  cout<<" \n result: "<<X.x1<<", "<<X.x<<", "<<X.x2;
        getch();
        return 0;
}
Выводит не то что надо. Должно быть (0.51, 2 ,3.99)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.03.2010, 17:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос [c++] Перегрузка операторов (C++):

Что такое "перегрузка операторов"? Каковы принципы работы перегруженных операторов и назначение указателя this - C++
Добрый день . Помогите понять принцип работы перегрузки операторов. объясните пожалуйста в зависимости от чего зависит агрумент при...

Перегрузка операторов - C++
Доброго времени суток! Столкнулся с такой проблемой, перегрузка операторов. Имею работающий код, но не смог сделать по своему заданию. ...

Перегрузка операторов - C++
В общем задание следующее: Создайте класс chess (шахматы), в котором хранятся поля шахматной доски x, y (целые числа, лежащие в диапазоне...

Перегрузка операторов - C++
Решите пожалуйсто задачу: Разработайте программу, в которой реализована перегрузка оператора «^». Оператор «^» должен возводить...

[c++] Перегрузка операторов - C++
Не работает. #include &lt;conio.h&gt; #include &lt;iostream.h&gt; #pragma argsused struct FazzyNumber { double x; double x1,x2; ...

C++ перегрузка операторов - C++
люди такая ситуация кто может в краце объясните перегрузку операторов мне например надо перегрузить оператор умножения что бы умножить...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Nameless One
Эксперт С++
5771 / 3420 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
28.03.2010, 17:26 #2
Я немножко переделал, и у меня выводит
Код
 result: 0.51, 2, 4.51
Я даже проверил вручную, и, судя по всему, мой ответ - правильный.
Вот код:
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
#include <conio.h>
#include <iostream>
 
struct FazzyNumber
{ double x;
  double x1,x2;
  FazzyNumber(double x,double e1,double e2);
  FazzyNumber() : x(), x1(), x2() {}
  };
 
 FazzyNumber::FazzyNumber(double _x,double e1,double e2)
     :x(_x)
 {
   x1=x-e1;
   x2=x+e2;
 }
 FazzyNumber operator+(FazzyNumber A,FazzyNumber B)
 { FazzyNumber rez;
   rez.x=A.x+B.x;
   rez.x1=rez.x-A.x1-B.x1;
   rez.x2=rez.x+A.x2+B.x2;
      return rez;
 }
 
int main()
{ FazzyNumber A(1.0,0.5,0.5), B(1.0,0.01,0.01),X;
  X=A+B;
  std::cout<<" \n result: "<<X.x1<<", "<<X.x<<", "<<X.x2 << std::endl;
        getch();
        return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.03.2010, 17:26
Привет! Вот еще темы с ответами:

перегрузка операторов - C++
Всем привет. Дошел до темы перегрузки операторов и возникло два вопроса. Первый: Чем отличается вот этот код String ...

Перегрузка операторов - C++
В общем учу эту тему и ввожу код один в один как в уроке, но в уроке он компилится, а у меня нет. Ругается на &quot;c1++;&quot;, подскажите...

Перегрузка операторов - C++
Создайте класс Fraction (обыкновенная дробь), в котором реализовать перегрузку: оператора суммирования дробей, оператора суммирования дроби...

Перегрузка операторов ++ - C++
доброго времени суток. есть утечка памяти как я понимаю, но не мойму почему. о чем программа: есть обьект типа MString. В этом классе...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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