Xây dựng một lớp tamgiac có các thành phần sau:
- Các thuộc tính là các cạnh a, b, c
- Các hàm thành phần bao gồm:
+ Hàm nhập giá trị cho các cạnh (Kiểm tra tính hợp lệ đảm bảo là 3 cạnh của một tam giác)
+ Hàm tính diện tích tam giác
+ Hàm kiểm tra tam giác(đều, vuông cân, cân, vuông, thường)
+ Hàm hiển thị thông tin( diện tích, tính chất tam giác)
Viết một chương trình kiểm tra.
Trích từ:
http://kenhdaihoc.com/forum/showthread.php?t=2811#include <iostream.h>
#include <conio.h>
#include <math.h>
class tamgiac
{
private:
int a,b,c;
float dientich();
int kttamgiac();
public:
void nhap();
void in();
};
void tamgiac::nhap()
{
do
{
cout<<"Nhap canh a:";cin>>a;
cout<<"Nhap canh b:";cin>>b;
cout<<"Nhap canh c:";cin>>c;
}while(a+b<c||a+c<b||b+c<a);
}
float tamgiac::dientich()
{
float p;
p=(a+b+c)/2;
return (sqrt(p*(p-a)*(p-b)*(p-c)));
}
int tamgiac::kttamgiac()
{
if(a==b||b==c||c==a)
if(a==b&&b==c)
return 1;
else
if(a*a==b*b+c*c||b*b==a*a+c*c||c*c==a*a+b*b)
return 2;
else
return 3;
else
if(a*a==b*b+c*c||b*b==a*a+c*c||c*c==a*a+b*b)
return 4;
else
return 5;
}
void tamgiac::in()
{
cout<<"Dien tich tam giac la:"<<dientich()<<endl;
int kt=kttamgiac();
switch(kt)
{
case 1:
cout<<" Tam giac deu"<<endl;
break;
case 2:
cout<<" Tam giac vuong can"<<endl;
break;
case 3:
cout<<" Tam giac can "<<endl;
break;
case 4:
cout<<" Tam giac vuong"<<endl;
break;
case 5:
cout<<" Tam giac thuong"<<endl;
break;
}
}
void main()
{
tamgiac a;
a.nhap();
a.in();
getch();
}
Comments[ 0 ]
Đăng nhận xét