Tạo lớp D2 các điểm trên mặt phẳng tọa độ Oxy, bắt buộc phải có:
Ø Thành
phần dữ liệu private là x và y
Ø Hàm
thiết lập với các tham số mặc định gán cho các tọa độ
Ø Hàm
tính khoảng cách 2 điểm trên mặt phẳng
Ø Hàm
chồng toán tử trích dòng >> để nhập tọa độ của điểm từ bàn phím
Ø Hàm
chồng toán tử chèn dòng << để xuất tọa độ của điểm ra màn hình
Tạo lớp D3 các điểm trong không gian tọa độ Oxyz kế thừa lớp D2, bắt buộc phải có:
Ø Thành
phần dữ liệu private là z
Ø Hàm
thiết lập với các tham số mặc định gán cho các tọa độ
Ø Hàm
tính khoảng cách 2 điểm trong không gian
Ø Hàm
chồng toán tử trích dòng >> để nhập tọa độ của điểm từ bàn phím
Ø Hàm
chồng toán tử chèn dòng << để xuất tọa độ của điểm ra màn hình
Hàm main tạo 2 điểm D2 là a và b; 2 điểm D3
là c và d với các tọa độ nhập từ bàn phím. Xuất tọa độ các điểm và khoảng cách
hai điểm a và b; c và d.
#include<math.h>
#include<iostream.h>
class
D2
{float
x,y;
D2(float ox=0,float oy=0)
{x=ox; y=oy; }
friend ostream &operator <<(ostream &Out,D2 &P)
{ Out<<"Toa do
x="<<P.x<<", Toa do y="<<P.y;
return Out;
}
friend istream &operator >>(istream
&Input,D2 &P)
{cout<<"Toa do
x=";Input>>P.x;
cout<<"Toa do
y=";Input>>P.y;
return Input;
}
float kc(D2 a)
{return
sqrt((x-a.x)*(x-a.x)+(y-a.y)*(y-a.y));
}
float getx()
{return x; }
float gety()
{return y; }
};
class
D3:D2
{float
z;
public:
D3(float ox=0,float oy=0,float
oz=0):D2(ox,oy)
{z=oz; }
friend
istream &operator >>(istream &Input,D3 &P)
{D2 Q=P;
Input>>Q;
D3 R(Q.getx(),Q.gety());
P=R;
cout<<"Toa do
z=";Input>>P.z;
return Input;
}
friend ostream &operator <<(ostream
&Out,D3 &P)
{ D2 Q=P;
Out<<Q<<", Toa do
z="<<P.z<<"\n";
return Out;
}
float kc(D3 a)
{return
sqrt((getx()-a.getx())*(getx()-a.getx())+(gety()-a.gety())*(gety()-a.gety())+(z-a.z)*(z-a.z));
}
};
void
main()
{D2
a,b; D3 c,d;
cout<<"Nhap diem D2 a:\n"; cin>>a;
cout<<"Nhap diem D2 b:\n"; cin>>b;
cout<<"\nNhap diem D3 c:\n"; cin>>c;
cout<<"Nhap diem D3 d:\n"; cin>>d;
cout<<"Diem a:\n"; cout<<a;
cout<<"\nDiem b:\n"; cout<<b;
cout<<"\nDiem c:\n"; cout<<c;
cout<<"Diem d:\n"; cout<<d;
cout<<"KC(a,b)="<<a.kc(b);
cout<<"\nKC(c,d)="<<c.kc(d);
}
Nhãn bài viết: