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

ООП. Реализовать класс FazzyNumber для работы с нечеткими числами - C++

Восстановить пароль Регистрация
 
Maria3
Сообщений: n/a
20.05.2013, 15:02     ООП. Реализовать класс FazzyNumber для работы с нечеткими числами #1
ребят, помогите решить...
Реализовать класс FazzyNumber для работы с нечеткими числами, которые представляются тройками чисел (x-e1,x,x+e1. Для чисел А=(А-аl,A,A+ar) и B=(B-bl,B,B+br) арифметическая операция выполняется по следующей формуле: A+B=(A+B-al-bl,A+B,A+B+ar+br;
обязательно должны быть реализованы: метод инициализации Init, ввод с клавиатуры Read; вывод на экран Display, преобразование в строку toString.
вот что у меня есть, выглядит ужасно...
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
using namespace std; 
 
struct FazzyNumber
{ 
  public:
    double x;
    double x1,x2;
    FazzyNumber(double x,double e1,double e2);
    FazzyNumber() : x(), x1(), x2() {} 
    FazzyNumber *read();
    void Display();
    double summa();
  private:
    double toString();
    void Init();
    double first;
    double second;
    char str[20];
    double A;
    double B;
  };
 
FazzyNumber *FazzyNumber::read()
{    
    double e1,e2;
    cout<<"Введите :"<<endl;
    cin>>x1>>e1>>e2;
    cout<<"Введите :"<<endl;
    cin>>x2>>e1>>e2;
     FazzyNumber A(x1,e1,e2), B(x2,e1,e2),X;
    first=e1;
    second=e2;
    return this;
}
void FazzyNumber::Init()
{ 
        if (first<=0)
        {
           cout<<"Ошибка! Введите число больше 0 "<<endl;
           cout<<"Введите e1: =";
           cin>>first;
         }
       if (second<=0)
       {
          cout<<"Ошибка! Введите число больше 0"<<endl; 
          cout<<endl<<"Введите e2 : =";
          cin>>second;
       }
}
 FazzyNumber::FazzyNumber(double _x,double e1,double e2)
     :x(_x)
 {
   x1=x-e1;
   x2=x+e2;
 }
 
 void FazzyNumber::Display()
 { 
     FazzyNumber A(x1,first,second), B(x2,first,second),X;
     if ((X.x1!=0) && (X.x!=0) && (X.x2!=0))
     cout<<" \n result: "<<X.x1<<", "<<X.x<<", "<<X.x2 <<endl;
 }
 double FazzyNumber::summa()
 {  
     FazzyNumber A(x1,first,second), B(x2,first,second),X;
   FazzyNumber rez;
     rez.x=A.x+B.x; 
     rez.x1=rez.x-A.x1-B.x1;
     rez.x2=rez.x+A.x2+B.x2; 
   cout<<" \n result: "<<rez.x<<", "<<rez.x1<<", "<<rez.x2<<endl;
  return 0;
 }
 double FazzyNumber::toString()
 { 
     
     char str[20];
     
     cout<<str<<endl;
 
     return 0;
 }
  FazzyNumber *Make_linur()
    { 
    float x=0,e1=0,e2=0;
      FazzyNumber *number = new FazzyNumber(x,e1,e2);
    return number;
 }
int main()
{ 
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    FazzyNumber *m;
    if (m = Make_linur()) { 
        m->Display();
    }
    if (m->read()) { 
        m->Display();
    }
    if (m) {
        m->Init();
        m->summa();
        m->toString();
    }
        return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.05.2013, 15:02     ООП. Реализовать класс FazzyNumber для работы с нечеткими числами
Посмотрите здесь:

C++ Класс для работы с комплексными числами
C++ ООП. Класс Angle для работы с углами на плоскости.
Класс для работы с большими числами C++
C++ Класс Complex для работы с комплексными числами
C++ Описать класс для работы с числами
15. Создать класс LongLong для работы с целыми числами. Число должно быть представлено двумя полями.Реализовать арифметические операции C++
C++ Реализовать класс Complex для работы с комплексными числами
C++ Реализовать класс Complex для работы с комплексными числами.

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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