Скачиваний:
21
Добавлен:
01.05.2014
Размер:
3.38 Кб
Скачать
/*Programma testirovaniya
  klessa "tochka"
  Razrabotana studentom gr.3342
  Mityaginim Sergeem
  2.07.2005
*/

#include<iostream.h>
#include<math.h>
#include<values.h>
#include<conio.h>
#include<c:\BORLANDC\BIN\CLTPOINT\Cpoint.h>

//------------------------------------
void main(void)
{clrscr();


 //---Vizov konstruktora--------------
 cout<<"programma testirovaniya"<<endl
	<<"Klassa 'Tochka'"<<endl<<"Author: Mityagin Sergey"<<endl<<endl;

 cout<<"Sozdanie tochki:"<<endl;

 double r1;
 double fi1;
						//-Vvod nachalnogo radiusa
 cout<<"Vvod nachalnogo radiusa(r) [-10000..10000]: "<<endl;
 cin>>r1;
 cout<<"Vvedeno znachenie: "<<r1<<endl;

 cout<<"Vvod nachalnogo ugla(fi): "<<endl;      //-Vvod nachalnogo ugla
 cin>>fi1;
 cout<<"Vvedeno znachenie: "<<fi1<<endl;

 Cpoint point(r1,fi1);                          //-vizov konstruktora

 //-Proverka postusloviya konstruktora-sozdali tochku s zadannimi
	//-koordinatami-

   if (((point.getR()-r1)<=0.02)&&((point.getFi()-fi1)<=0.02))
	{cout<<"Post konstruktora VIPOLNEN"<<endl<<endl;
	}else{cout<<"Post konstruktora NE vipolnen"<<endl<<endl;}



 //-Proverka invarianta----

	if (point.inv()==1)
		{cout<<endl<<"Invariant Vipolnen"<<endl;}
		else{cout<<endl<<"Invariant NE Vipolnen"<<endl;}


 //---1 Vizov selectora-------------

 cout<<endl<<"Vvedena tochka s koordinatami:"<<endl;

 double x1;
 double y1;

 x1=point.getR()*cos(point.getFi());       //-Raschet dekartovih
 y1=point.getR()*sin(point.getFi());       //-koordinat

 r1=point.getR();                          //-Polarnie koordinati
 fi1=point.getFi();

 cout<<"Radius 1: "<<r1<<endl<<"Ugol 1: "<<fi1<<endl<<endl;
 cout<<"Abscissa 1: "<<x1<<endl<<"Ordinata 1: "<<y1<<endl;




 //---Vizov operacii------------------
 cout<<endl<<"Vizov operacii sdviga na vector"<<endl;

 double dx;
 cout<<"Vvod DX [-10000..10000]"<<endl;    //-vvod sdviga po x (dx)
 cin>>dx;

 cout<<"Vvedeno znachenie dx: "<<dx<<endl;

 double dy;                                //-vvod sdviga po y (dy)
 cout<<"Vvod dy [-10000..10000]"<<endl;
 cin>>dy;

 cout<<"Vvedeno znachenie dy: "<<dy<<endl<<endl;

					   //-vivod nachalnih koordinat
 x1=point.getR()*cos(point.getFi());       //-v dekartovoy sisteme
 y1=point.getR()*sin(point.getFi());       //-koordinat

 cout<<"Nachalnie koordinati"<<endl;
 cout<<"x1: "<<x1<<endl<<"y1: "<<y1<<endl<<endl;

 point.Move(dx,dy);                        //-vizov funkcii sdviga

 //-Proverka postusloviya move------
 double x2;
 double y2;
					   //-raschet konechnih koordinat
 x2=point.getR()*cos(point.getFi());       //-v dekartovoy sisteme
 y2=point.getR()*sin(point.getFi());       //-koordinat

 cout<<"Konechnie koordinati"<<endl;
 cout<<"x2: "<<x2<<endl<<"y2: "<<y2<<endl<<endl;


     //-proverka sdviga na nujniy vector-
 if ((abs(x1+dx-x2)<=0.03)&&(abs(y1+dy-y2)<=0.03))
	{cout<<"Post move VIPOLNEN"<<endl;}
	else{cout<<"Post mov NE vipolnen"<<endl;}


 //-Proverka invarianta----

	if (point.inv()==1)
		{cout<<endl<<"Invariant Vipolnen"<<endl;}
		else{cout<<endl<<"Invariant NE Vipolnen"<<endl;}



 //---2 Vizov selectora-------------
 cout<<endl<<"Konechnie koordinati tochki:"<<endl;
 r1=point.getR();
 fi1=point.getFi();

 cout<<endl<<"Radius 2: "<<r1<<endl<<"Ugol 2: "<<fi1<<endl;


 getch();
}
Соседние файлы в папке Класс Точка