Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <math.h>
- #include <conio.h>
- using namespace std;
- class angle{
- private:
- int gradus,minyta;
- public:
- angle(){gradus = 0;minyta = 0;};
- angle(int m,int n) {
- gradus = m;minyta = n;
- };
- void setAngle(int grad,int min){
- gradus = grad;
- minyta = min;
- };
- float toRadian(){
- return gradus*3.14/180 + minyta/60*3.14/180;
- }
- int to360(){
- cout<<"Vu xotite privesti "<<gradus<<" gradusov k 360-gradusnomu vidy."<<endl;
- int tmp = gradus;
- if(tmp>360){
- while(tmp>360){
- tmp-=360;
- }
- cout<<"Rezult posle privedeniya k 360-gradusnomu vidy : "<<tmp<<endl;
- }else
- cout<<"Nelzya privesti gradus k 360-gradusnomu vidy. \nGradusnaya mera ugla <360 gradusov"<<endl;
- return tmp;
- }
- angle operator+(int a){
- this->gradus = gradus + a;
- return *this;
- }
- angle operator-(int a){
- this->gradus = gradus - a;
- return *this;
- }
- float return_sin(){
- return sin(float(gradus));
- }
- friend bool operator==(const angle &a,angle &b){
- return a.gradus == b.gradus && a.minyta == b.minyta;
- }
- float returnGr(){
- return gradus;
- }
- };
- void main () {
- char ch;
- angle a,b;
- do{
- cout<<"1 - dobavleniya uglov"
- "\n2 - perevesti v radianu"
- "\n3 - prbvedenie k diapazonu 360"
- "\n4 - uvelichenie ugla"
- "\n5 - umenshenie ugla"
- "\n6 - poluchenie sinusa"
- "\n7 - sravnenie uglov"
- "\n8 - exit";
- ch = _getch();
- switch(ch){
- case'1':{
- system("cls");
- int gr1,gr2,min1,min2;
- while(true){
- cout<<"Vvedite velechiny gradusa dlya pervogo ugla : ";
- cin>>gr1;
- if(cin.good() && gr1>0 && gr1<180){
- break;
- }else{
- cin.clear();
- cout<<"Eror,vvedeno nevernoe znachenie"<<endl;
- cin.ignore(10,'\n');
- }
- }
- while(true){
- cout<<"Vvedite velechiny minyt dlya pervogo ugla : ";
- cin>>min1;
- if(cin.good() && min1>0 && min1<=60){
- break;
- }else{
- cin.clear();
- cout<<"Eror,vvedeno nevernoe znachenie"<<endl;
- cin.ignore(10,'\n');
- }
- }
- a.setAngle(gr1,min1);
- while(true){
- cout<<"Vvedite velechiny gradusa dlya vtorogo ugla : ";
- cin>>gr2;
- if(cin.good() && gr2>0 && gr2<180){
- break;
- }else{
- cin.clear();
- cout<<"Eror,vvedeno nevernoe znachenie"<<endl;
- cin.ignore(10,'\n');
- }
- }
- while(true){
- cout<<"Vvedite velechiny minyt dlya vtorogo ugla : ";
- cin>>min2;
- if(cin.good() && min2>0 && min2<=60){
- break;
- }else{
- cin.clear();
- cout<<"Eror,vvedeno nevernoe znachenie"<<endl;
- cin.ignore(10,'\n');
- }
- }
- b.setAngle(gr2,min2);
- };break;
- case'2':{
- system("cls");
- cout<<"Ugol 1 v radianah = "<<a.toRadian()<<endl;
- cout<<"Ugol 2 v radianah = "<<b.toRadian()<<endl;
- };break;
- case'3':{
- system("cls");
- cout<<"Perevod pervogo ugla v 360 : "<<endl;
- a.to360();
- cout<<endl<<endl;
- cout<<"Perevod vtorogo ugla v 360 : "<<endl;
- b.to360();
- cout<<endl<<endl;
- };break;
- case'4':{
- int gr;
- system("cls");
- for(int i = 0;i<2;i++){
- cout<<"Vvedite na skolko gradusov vu xotite uvelichit "<<i+1<<"-tot gradus : ";
- cin>>gr;
- if(i == 0)
- {
- a = a+gr;
- cout<<"Posle uveclecheniya gradusa na "<<gr<<" v rezultate poluchaem "<<a.returnGr()<<endl;
- }else if( i==1){
- b = b+gr;
- cout<<"Posle uveclecheniya gradusa na "<<gr<<" v rezultate poluchaem "<<b.returnGr()<<endl;
- }
- }
- };break;
- case'5':{
- int gr;
- system("cls");
- for(int i = 0;i<2;i++){
- cout<<"Vvedite na skolko gradusov vu xotite umenshut ugol "<<i+1<<"-tot gradus : ";
- cin>>gr;
- if(i == 0)
- {
- a = a-gr;
- cout<<"Posle umen`sheniya gradusa na "<<gr<<" v rezultate poluchaem "<<a.returnGr()<<endl;
- }else if( i==1){
- b = b-gr;
- cout<<"Posle umensheniya gradusa na "<<gr<<" v rezultate poluchaem "<<b.returnGr()<<endl;
- }
- }
- };break;
- case'6':{
- system("cls");
- cout<<"Sinus ugla "<<a.returnGr()<<" = "<<a.return_sin()<<endl;
- cout<<"Sinus ugla "<<b.returnGr()<<" = "<<b.return_sin()<<endl;
- };break;
- case'7':{
- system("cls");
- if(a==b)
- cout<<"Yglu ravnu"<<endl;
- else
- cout<<"Yglu ne ravnu!"<<endl;
- };break;
- }
- }while(ch!='8');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement