Thứ Sáu, 9 tháng 3, 2012

Xây dựng lớp tamgiác trong C++

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();
 }

0 nhận xét: