Advertisement
Guest User

Untitled

a guest
May 25th, 2016
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.03 KB | None | 0 0
  1. #include <iostream>
  2. #include <conio.h>
  3. #include <cmath>
  4. using namespace std;
  5. struct Point{
  6. int X,Y;
  7. };
  8. class point{
  9. private:
  10. Point dot;
  11. public:
  12. point(int n){};
  13. point(){
  14. while(true){
  15. cout<<"Vvedite koordinatu X :";
  16. cin>>dot.X;
  17. if(cin.good())
  18. break;
  19. else
  20. {
  21. cin.clear();
  22. cout<<"Nevernuy vvod"<<endl;
  23. cin.ignore(100,'\n');
  24. }
  25. }
  26. while(true){
  27. cout<<"Vvedite koordinatu Y :";
  28. cin>>dot.Y;
  29. if(cin.good())
  30. break;
  31. else
  32. {
  33. cin.clear();
  34. cout<<"Nevernuy vvod"<<endl;
  35. cin.ignore(100,'\n');
  36. }
  37. }
  38. }
  39. void toX(int n){
  40. dot.X +=n;
  41. }
  42. void toY(int n){
  43. dot.Y +=n;
  44. }
  45. float doNachala(){
  46. return sqrt(pow(0.0-dot.X,2)+pow(0.0-dot.Y,2));
  47. //return abs(dot.X - dot.Y);
  48. }
  49. float doTochki(point &a){
  50. return sqrt(pow(a.getX() - this->dot.X,2) + pow(a.getY() - this->dot.Y,2));
  51. //return abs(a.dot.X + a.dot.Y - (dot.X + dot.Y));
  52. }
  53. float getX(){return (float)dot.X;}
  54. float getY(){return (float)dot.Y;}
  55. void toPolar(){
  56. cout<<"Polyarnuy radis r = "<<sqrt(pow((float)dot.X,2)+pow((float)dot.Y,2))<<endl;
  57. cout<<"Polyarnuy ugol = "<<asin(sin((float)dot.Y/(sqrt(pow((float)dot.X,2)+pow((float)dot.Y,2)))))<<endl;
  58. }
  59. bool operator==(point &a){
  60. if(dot.X == a.getX() && dot.Y == a.getY())
  61. return true;
  62. else
  63. return false;
  64. }
  65.  
  66. };
  67.  
  68. void main () {
  69. point a,b,select(0),unselect(0);
  70. char ch,dot;
  71. int sel;
  72. do{
  73. do{
  74. system("cls");
  75. cout<<"Vuberite tochku s kotoroy vu xotite rabotat,na angliyskoy rasskladke : "<<endl;
  76. cout<<"1 - tochka a("<<a.getX()<<";"<<a.getY()<<")";
  77. cout<<"\t2 - tochka b("<<b.getX()<<";"<<b.getY()<<")"<<endl;
  78. cin>>sel;
  79. switch(sel){
  80. case 1:dot='a';break;
  81. case 2:dot='b';break;
  82. default:cout<<"EROR"<<endl;
  83. }
  84. }while(dot!='a' && dot!='b');
  85. cout<<"1 - peremeshenie po osi X"
  86. "\n2 - peremeshenie po osi Y"
  87. "\n3 - rasstoyanie do nachala koordinat"
  88. "\n4 - rasstoyanie mejdu dvumya tochkami"
  89. "\n5 - preobrazovanie v polyarnue koordinatu"
  90. "\n6 - sovpadenie i ne sovpadnie"
  91. "\n7 - exit";
  92. ch = _getch();
  93. switch(ch){
  94. case'1':{
  95. system("cls");
  96. int n;
  97. while(true){
  98. cout<<"Vvedite na skol`ko edinic vu xotite pribavit` X : ";
  99. cin >> n;
  100. if(cin.good()){
  101. break;
  102. }else
  103. {
  104. cin.clear();
  105. cout<<"Vvedeno nevernoe znachenie!"<<endl;
  106. cin.ignore(100,'\n');
  107. }
  108.  
  109. }
  110. if(dot=='a')
  111. a.toX(n);
  112. else if(dot=='b')
  113. b.toX(n);
  114. else
  115. cout<<"Netu takogo varianta!"<<endl;
  116. break;
  117. }
  118. case'2':{
  119. system("cls");
  120. int n;
  121. while(true){
  122. cout<<"Vvedite na skol`ko edinic vu xotite pribavit` Y : ";
  123. cin >> n;
  124. if(cin.good()){
  125. break;
  126. }else
  127. {
  128. cin.clear();
  129. cout<<"Vvedeno nevernoe znachenie!"<<endl;
  130. cin.ignore(100,'\n');
  131. }
  132.  
  133. }
  134. if(dot=='a')
  135. a.toY(n);
  136. else if(dot=='b')
  137. b.toY(n);
  138. else
  139. cout<<"Netu takogo varianta!"<<endl;
  140. break;
  141. }
  142. case'3':{
  143. system("cls");
  144. if(dot=='a')
  145. cout<<"Rasstoyanie do nachala koordinat = "<<a.doNachala();
  146. else if(dot=='b')
  147. cout<<"Rasstoyanie do nachala koordinat = "<<b.doNachala();
  148. else
  149. cout<<"Netu takogo varianta!"<<endl;
  150. system("pause>>void");
  151. break;
  152. }
  153. case'4':{
  154. system("cls");
  155. if(dot=='a')
  156. cout<<"Rasstoyanie ot tochki a do tochki b = "<<a.doTochki(b);
  157. else if(dot=='b')
  158. cout<<"Rasstoyanie ot tochki b do tochki a = "<<b.doTochki(a);
  159. else
  160. cout<<"Netu takogo varianta!"<<endl;
  161. system("pause>>void");
  162. break;
  163. }
  164. case'5':{
  165. system("cls");
  166. if(dot=='a')
  167. a.toPolar();
  168. else if(dot=='b')
  169. b.toPolar();
  170. else
  171. cout<<"Takogo varianta netu!"<<endl;
  172. system("pause>>void");
  173. break;
  174. }
  175. case'6':{
  176. system("cls");
  177. if(a==b)
  178. cout<<"Tochki ravnu!"<<endl;
  179. else
  180. cout<<"Tochki ne ravnu!"<<endl;
  181. system("pause>>void");
  182. }
  183. default:cout<<"Vedenogo varianta ne sushestvuet!"<<endl;
  184. }
  185. }while(ch!='7');
  186. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement