#include<iostream.h>
#include<string.h>
#include<iomanip.h>
#include<math.h>
class line
{ float k, b, x1, y1, x2, y2;
public:
void enter();
void exit();
friend float ugl(line,line);
friend int proverka_par(line,line);
friend int proverka_per(line,line);
friend void tochka(line,line);
};
void line::enter()
{ cout<<"vvedite x1, y1 ";
cin>>x1>>y1;
cout<<"vvedite x2, y2 ";
cin>>x2>>y2;
k=(y1-y2)/(x1-x2);
b=y1-x1*k;
}
void line::exit()
{
cout<<setw(10)<<"y="<<k<<"*x + "<<b<<endl;
}
float ugl(line a,line b)
{ float u, y;
y=fabs((b.k-a.k)/(1+(a.k*b.k)));
u=atan(y);
return u;
}
int proverka_par(line a,line b)
{
if(a.k==b.k)
return 1;
else return 0;
}
int proverka_per(line a,line b)
{if(a.k==-1/b.k)
return 1;
else return 0;
}
void tochka(line a,line b)
{float x, y;
x=(a.b-b.b)/(b.k-a.k);
y=x*a.k+a.b;
cout<<"x= "<<x<<endl;
cout<<"y= "<<y<<endl;
}
void main()
{
line a, b;
int otv, d;
float ug;
cout<<" deistviya s pryamimi\n";
do
{
cout<<"1 - vvod koordinat\n";
cout<<"2 - proverka na parallelinosti\n";
cout<<"3 - proverka na perpendikulyarnost\n";
cout<<"4 - ugol mejdu pryamimi\n";
cout<<"5 - tochka pereseceniya\n";
cout<<"6 - vixod iz menu\n";
cout<<"vash vibor\n"; cin>>d;
switch (d)
{
case 1:
a.enter();
b.enter();
a.exit();
b.exit();
break;
case 2:
if(proverka_par(a, b)==1)cout<<"pryamie parallelnie\n";
else cout<<" pryamie peresekautsya\n";
break;
case 3:
if(proverka_per(a,b)==1)cout<<"pryamie perpendikulyarhie\n";
else cout<<"pryamie ne perpendikulyarnie\n";
break;
case 4:
ug=ugl (a, b);
cout<<" ugol(radian)="<<ug<<endl;
break;
case 5:
tochka(a, b);
break;
case 6: break;
default:cout<<"nevernii vubor\n";
}
cout<<"prodoljit?(1/0)"; cin>>otv;
}
while (otv==1);
}
, , , .
, ; , , , . .
|
|
.
1. , . . ++ / . . , . . . - .: -, 1999. - 288 .
2. . ++. . . .: , 1991. 352 .
3. Borland C++. . . .: , 1996, - 416 .
4. . ++. . . . .: , 1996. 272 .
5. .. . . . : , 2000. 640 .
6. , /C++. : . " . " / . . . - . .: , 2004. - 460 .
7. . ., . ., . ., . . . .: , 1988. 224 .
8. , . . - : . 2201 ". , " / . .; . . . -. - : - , 2001. - 107 .
9. - : . " " 0719 ". ( ) " / . . . -; . . . . - : - , 2002. - 50 .
10. , / . . . - . .: : , 2002. - 182 ..
11. , . . : . ". . " / . . . - .: . ., 2003. - 448 .
12. , . . : . / . . ; . . . -. - : - , 2007. - 84 .
13. , . . : . " . " / . . . - .: , 2004. - 160 .
14. .. - : . , - . 2009. 16 .