Home
»
bai tap oop
»
lap trinh oop
» [oop c++] tính chu vi, diện tích, tọa đô trọng tâm, trực tâm của tam giác nhập vào tọa độ 3 đỉnh
Saturday, January 31, 2015
[oop c++] tính chu vi, diện tích, tọa đô trọng tâm, trực tâm của tam giác nhập vào tọa độ 3 đỉnh
31
Jan
2015
#include<iostream>
using namespace std;
class diem
{
private:
float x,y;
public:
diem(void);
~diem(void);
float getx();
float gety();
void nhapdiem();
void xuatdiem();
float tinhkhoangcach(diem);
};
diem::diem(void)
{
}
diem::~diem(void)
{
}
float diem::getx()
{
return x;
}
float diem::gety()
{
return y;
}
void diem::nhapdiem()
{
cout<<"hoanh do: ";cin>>x;
cout<<"tung do: ";cin>>y;
}
void diem::xuatdiem()
{
cout<<"("<<x<<" , "<<y<<")";
}
float diem::tinhkhoangcach(diem b)
{
return sqrt(pow((x-b.x),2)+pow((y-b.y),2));
}
class tamgiac
{
private:
diem a,b,c;
public:
tamgiac(void);
~tamgiac(void);
void nhaptamgiac();
void xuattamgiac();
float tinhchuvi();
float tinhdientich();
void diemtrongtam();
void diemtructam();
};
tamgiac::tamgiac(void)
{
}
tamgiac::~tamgiac(void)
{
}
void tamgiac::nhaptamgiac()
{
int kt;
do
{
kt=0;
float ab,ac,bc;
cout<<"\tnhap diem A:\n";
a.nhapdiem();
cout<<"\tnhap diem B:\n";
b.nhapdiem();
cout<<"\tnhap diem c:\n";
c.nhapdiem();
ab=a.tinhkhoangcach(b);
ac=a.tinhkhoangcach(c);
bc=b.tinhkhoangcach(c);
if(ab+ac<=bc || ab+bc<=ac || ac+bc<=ab)
{
cout<<"\n3 diem khong tao thanh am giac! nhap lai!\n\n";
kt=1;
}
}while(kt);
}
void tamgiac::xuattamgiac()
{
cout<<"\nA:";a.xuatdiem();
cout<<"\nB:";b.xuatdiem();
cout<<"\nC:";c.xuatdiem();
}
float tamgiac::tinhchuvi()
{
float ab,ac,bc;
ab=a.tinhkhoangcach(b);
ac=a.tinhkhoangcach(c);
bc=b.tinhkhoangcach(c);
return ab+ac+bc;
}
float tamgiac::tinhdientich()
{
float p=tinhchuvi()/2,ab,bc,ac;
ab=a.tinhkhoangcach(b);
ac=a.tinhkhoangcach(c);
bc=b.tinhkhoangcach(c);
return sqrt(p*(p-ab)*(p-ac)*(p-bc));
}
void tamgiac::diemtrongtam()
{
float x,y;
x=(a.getx()+b.getx()+c.getx())/3;
y=(a.gety()+b.gety()+c.gety())/3;
cout<<"("<<x<<" , "<<y<<")";
}
void tamgiac::diemtructam()
{
float dx,dy,d;
d=4*(b.getx()-b.getx())*(c.gety()-a.gety())-4*(c.getx()-a.getx())*(b.gety()-a.gety());
dx=(pow(b.getx(),2)+pow(b.gety(),2)-pow(a.getx(),2)-pow(a.gety(),2))*2*(c.gety()-a.gety())
-(pow(c.getx(),2)+pow(c.gety(),2)-pow(a.getx(),2)-pow(a.gety(),2))*2*(b.gety()-a.gety());
dy=(pow(c.getx(),2)+pow(c.gety(),2)-pow(a.getx(),2)-pow(a.gety(),2))*2*(b.getx()-a.getx())
-(pow(b.getx(),2)+pow(b.gety(),2)-pow(a.getx(),2)-pow(a.gety(),2))*2*(c.getx()-a.getx());
cout<<"("<<dx/d<<" , "<<dy/d<<")";
}
void main()
{
tamgiac t;
t.nhaptamgiac();
t.xuattamgiac();
cout<<"\nchu vi = "<<t.tinhchuvi();
cout<<"\ndien tich = "<<t.tinhdientich();
cout<<"\ndiem trong tam = ";t.diemtrongtam();
cout<<"\ndiem truc tam = ";t.diemtructam();
}
Related Posts
[OOP C++] quản lý danh sách học sinh làm luận văn tốt nghiệp, thi tốt nghiệp, thi lại
[OOP C++] quản lý danh sách học sinh làm luận văn tốt nghiệp, thi tốt nghiệp, thi lạilập trình...Read more
[OOP C++] tìm ma trận nghịch đảo của mt vuông cấp n
lập trình hướng đối tượng tìm ma trận nghịch đảo của 1 ma trận vuông cấp n tùy ýmatran.h#pragma once...Read more
[OOP C++] tính tổng các phân số - lập trình hướng đối tượng
[OOP C++] tính tổng các phân số - lập trình hướng đối tượngphanso.h#pragma once#include<iostream&...Read more
[OOP C++] Tính Tổng, Hiệu, Tích, Thương của 2 phân số theo kiểu lập trình hướng đối tượng
[OOP C++] Tính Tổng, Hiệu, Tích, Thương của 2 phân số theo kiểu lập trình hướng đối tượng. có menu l...Read more
[oop c++] bài tập về doanh thu bán hàng, thuế, số lượng, giá tiền
[oop c++] bài tập về doanh thu bán hàng, thuế, số lượng, giá tiềnviết chương trình theo phong cách h...Read more
CÁC MỞ RỘNG CỦA C++
II.1. Các từ khóa mới của C++ Để bổ sung các tính năng mới vào C, một số từ khóa (keyword...Read more
Subscribe to:
Post Comments (Atom)
Popular Posts
-
Thêm một mục dự báo thời tiết vào blog chắc chắn sẽ làm blog của bạn trông pro hơn rất nhiều . Đây là một số code chèn dự báo thời tiết và...
-
Phần mềm Emu8086 là phần mềm cho phép mô phỏng hoạt động của vi xử lý 8086 bao gồm các câu lệnh cơ bản của 8086, xử lý ngắt mềm, giao tiếp v...
-
Bài Giải #include <stdio.h> #include <conio.h> #include <math.h> int main () { int n; float AS,AM,a; int s=0; float m=1...
-
lập trình tìm các bộ số pitago | lập trình c/c++. Một tam giác vuông có thể có tất cả các cạnh là các số nguyên. Tập của ba số nguyên của ...
-
1. Helloworld Đề bài: Viết chương trình hiển thị ra màn hình dòng chữ Hello, World! Ý tưởng: Code: #include int main() /* my first progra...
-
Viết chương trình nhập vào số nguyên dương h (2<h<23), sau đó in ra các tam giác có chiều cao là h.viết hàm in các tam giác có chiều c...
-
#include <stdio.h> #include <conio.h> #include <math.h> // Dinh nghia callback typedef int (* opstion) (int *, int); //ham...
-
viết chương trình c chuyển đổi hệ đếm nhị phân, bát phân, thập lục phân . DEC,BIN,HEX,OCT. Viết chương trình in bảng của các số từ 1 đến ...
0 comments:
Post a Comment
Click to see the code!
To insert emoticon you must added at least one space before the code.