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

Перегрузка оператора ровно! - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ условие для контрольной) нужен ответ http://www.cyberforum.ru/cpp-beginners/thread275197.html
C++ Как задать время выполнения цикла в секундах? Здравствуйте. кусок кода для вывода строки текста на экран const char string1 = "sample of text"; HDC dc = CreateDC(TEXT("DISPLAY"), NULL, NULL, NULL); TextOut(dc,35,60,string1,strlen(string1)); DeleteDC(dc); проблема в том что при обновлении экрана все естественно исчезает. если всё поместить в while(1) то проблема решается. Но как например сделать чтобы эта надпись выводилась на экран... http://www.cyberforum.ru/cpp-beginners/thread275191.html
Посоветуйте среду для программирования на Си C++
какую среду для програмирования на с лучше использовать. у меня visual studio 2008 ввожу самые простые прги и не могу их запустить , так само и с borland c++
мышь в определённом месте C++
Здравствуйте господа програмисты!!!Как поставить курсор мыши в определённое место? Заранее всем огромное спасибо!!!
C++ Найти сумму модулей членов последовательности http://www.cyberforum.ru/cpp-beginners/thread275170.html
нужно решить за сегодня - завтра 4е задачи! заранее спасибо) Добавлено через 7 минут и соотвецтвено сами задачи 1. Даны натуральное число n, действительные числа d1 , d2 ,. . ., dn. Вычислить: |d1 |+|d2 |+...+|dn | . 2. Даны натуральное число n, действительные числа y1 ,...yn . Найти
C++ Библиотека для TUI День добрый. Подскажите, пожалуйста, существует ли библиотека, основанная на curses (ncurses, pdcurses...), для создания TUI посредством виджетов или подобной технологии. Нужна библиотека, работающая на Linux и Windows. Слышал о CDK (Curses Development Kit), под cygwin успешно выполнил ./configure, но make после этого нашёл ошибки чуть ли не во всём исходном коде CDK. Причины ошибок я так и... подробнее

Показать сообщение отдельно
2008kedr2008
3 / 3 / 0
Регистрация: 16.11.2010
Сообщений: 165
12.04.2011, 20:12  [ТС]     Перегрузка оператора ровно!
Мне нужно записать углы в используя класс angle в класс Trangle
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
#ifndef CLASS 
#define CLASS 
#include <iostream> 
#include "angle.h"
 
using namespace std; 
 
            class  Triangles{ 
            public:
            Triangles();
            Triangles(int,int,int);
            Triangles(angle,angle,angle);
            Triangles(const Triangles&);       
            friend istream& operator >>(istream& , Triangles& );
            friend ostream& operator <<(ostream& , const Triangles& );
            Triangles& operator = (const Triangles& );
            double pirimetr();
            double plosh();
            double visota1();
            double visota2();
            double visota3();
            string vid();
            bool tre();
            int Tri();
            private:
            int q,w,e;        
            angle a,b,c; 
 }; 
 #endif
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#include <math.h> 
#include <iostream> 
#include "class.h" 
#include "angle.h"
using namespace std;
Triangles::Triangles(){
  q=w=e=0;
}; 
Triangles::Triangles(int q1, int w1, int e1){
  q=q1,w=w1,e=e1;
};
Triangles::Triangles (const Triangles& y1){
 q=y1.q, w=y1.w, e=y1.e;
};
ostream& operator<<(ostream& out, const Triangles& y) {
   out<<"a="<<y.q<<" b="<<y.w<<" c="<<y.e<<endl;
   return out;
};
istream& operator >>(istream& in, Triangles& y){
   do{
         in>>y.q>>y.w>>y.e;
   if((y.q>=y.w+y.e)||(y.w>=y.e+y.q)||(y.e>=y.w+y.q))
   cout<<"Poprobuyte snova!!!\n";
}while((y.q>=y.w+y.e)||(y.w>=y.e+y.q)||(y.e>=y.w+y.q)); 
return in;
};
Triangles::operator = (const Triangles &y ){
            
                
                        this->a=y.q;
                        this->b=y.w;
                        this->c=y.e;
                
                return *this;
                };
 
double Triangles::pirimetr(){
       return (q+w+e);
};
double Triangles::plosh(){ 
       return(0.25*(sqrt((q+w+e)*(q+w-e)*(q+w-e)))); 
};  
double Triangles::visota1(){
       return (0.25*(sqrt((q+w+e)*(w+e-q)*(q+w-e)))/q*2);
       }; 
double Triangles::visota2(){
       return (sqrt(0.25*(sqrt((q+w+e)*(e+w-q)*(q+w-e))))/w*2); 
       };    
double Triangles::visota3(){ 
            return (0.25*(sqrt((q+w+e)*(q+w-e)*(q+w-e)))/e*2);   
       };
       string Triangles::vid(){ 
if((e*e==q*q+w*w)||(q*q==e*e+w*w)||(w*w==q*q+e*e))
      return "Prymoygolniy"; 
      else if((q==w)&&(w==e)&&(q==e))
      return "Ravnostoronniy";
      else if((q==w)||(q==e)||(e==w))
      return "Ravnobedrenniy";
      else 
      return "Drugoy";
      }; 
int Triangles::Tri(){
                 return (120);};      
    
 
       
angle::angle(){
   x=0; y=0;};
   
angle::angle(int x1, int y1) {
   x=x1; y=y1;};
   
angle::angle(const angle& u1) {
   x=u1.x; y=u1.y;};
 
int angle::getx() {return x;};
int angle::gety() {return y;};
void angle::setx(int x1) {x=x1;};
void angle::sety(int y1) {y=y1;};
 
 
angle angle::operator+(angle& u2) {
   if(y+u2.y<60)
   return angle(x+u2.x, y+u2.y);
   else
   return angle(x+u2.x+1, y+u2.y-60);};
 
angle angle::operator-(angle& u3) {
   if((x-u3.x>0)&&(y-u3.y<0))
   return angle(x-u3.x-1, y-u3.y+60);
   else
   if((x-u3.x<0)&&(y-u3.y>0))
   return angle(x-u3.x+1, 60-(y-u3.y));
   else
   return angle(x-u3.x, y-u3.y);
   };   
       
double angle::degtorad(){
   return ((60.0*x+y)/10800.0)*3.1415;};
 
bool angle::comparison(const angle& u){
      if((x>u.x))
      return false;
      else if((x==u.x)&&(y>u.y))
      return false;
      else if ((x==u.x)&&(y==u.y))
      return true;
      else
      return false;
      };
 
angle angle::reduction(){
      if((x<=0)&&(y<=0))
      {while(x<=0) x+=360;
      if(y<0)
      return angle(x-1,60+y);
      else
      return angle(x,y);}
      else
      {while(x>=360) x-=360;
      return angle(x,y);}
      };
double angle::sinus(){
       return sin(degtorad());
};
 
bool Triangles::tre(){
     angle a5,a6(180,0); //cсравнение углов
     a5=a+b+c;
     return (a5.comparison(a6));
     
     };
это метод реализации решения как присвоить значению а метод именно для этого класса?? подскажите у меня компилятор ругается!!
 
Текущее время: 17:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru