Đề bài : ThucHanh11_Class_KhoiTaoHuyCongCuKhac.pdf
Hãy cài đặt lớp Diem2D với thiết kế như trong file Diem2D.h . Sử dụng lớp Diem2D đê thực hiện các công việc sau :
Nhập vào 2 biến kiểu Diem2D và tính khoảng cách giữa chúng, kết quả in ra dưới dạng số thập phân với 2 chữ số sau dấu phảy
Ví dụ kết quả :
Input Output
00 1.00
01
________________________________________________________________
Code : Diem2D.rar
________________________________________________________________
Diem2D.h
#ifndef Diem2D_H
#define Diem2D_H
class Diem2D{
private:
double x, y;
public:
Diem2D(); // khoi tao mac dinh
Diem2D(double x, double y); // khoi tao
Diem2D(const Diem2D& p); // khoi tao sao chep
double getX() const; // lay toa do X
double getY() const; // lay toa do Y
double dist(const Diem2D& p); // tinh khoang cach toi mot diem khac
};
void in2DauPhay(double);
#endif
__________________________________________________________________
Diem2D.cpp
#include "Diem2D.h"
#include <cmath>
#include <iostream>
using std::cout;
Diem2D::Diem2D()
{
x = 0.0;
y = 0.0;
}
Diem2D::Diem2D(double x, double y)
: x(x), y(y)
{
}
Diem2D::Diem2D(const Diem2D& p)
{
Diem2D(p.x, p.y);
}
double Diem2D::getX() const
{
return x;
}
double Diem2D::getY() const
{
return y;
}
double Diem2D::dist(const Diem2D& p)
{
return sqrt((x - p.x) * (x - p.x) + (y - p.y) * (y - p.y));
}
void in2DauPhay(double soThuc)
{
int phanNguyen = int(soThuc);
int phanThapPhan = int((soThuc - double(phanNguyen)) * 100);
if (phanThapPhan < 10) cout << phanNguyen << ".0" << phanThapPhan;
else cout << phanNguyen << "." << phanThapPhan;
}
________________________________________________________________________
main.cpp
#include <iostream>
#include <cstdlib>
#include "Diem2D.h"
using namespace std;
int main()
{
double x1, y1, x2, y2;
Diem2D diem_1, diem_2;
cout << "Moi nhap toa do diem thu nhat: "; cin >> x1 >> y1;
cout << "Moi nhap toa do diem thu hai: "; cin >> x2 >> y2;
diem_1 = Diem2D(x2, y2);
diem_2 = Diem2D(diem_1);
diem_1 = Diem2D(x1, y1);
cout << endl << "Toa do diem 1 vua nhap la: (" << diem_1.getX() << ", " << diem_1.getY() << ")" << endl;
cout << "Toa do diem 2 vua nhap la: (" << diem_2.getX() << ", " << diem_2.getY() << ")" << endl;
cout << endl << "Khoang cach giua 2 diem tren la: ";
in2DauPhay(diem_1.dist(diem_2));
cout << endl;
system("PAUSE");
return 0;
}
______________________________________________________________________