第三週項目一——三角形類2


int main()  
{  
    Triangle tri1;  //           (  )   
    double x,y,z;  
    cout<<"         :";  
    cin>>x>>y>>z;  
    tri1.setA(x);  
    tri1.setB(y);  
    tri1.setC(z);   //         
    if(tri1.isTriangle())  
    {  
        cout<<"    :"<<tri1.getA()<<','<<tri1.getB()<<','<<tri1.getC()<<endl;  
        cout<<"       :"<< tri1.perimeter()<<'\t'<<"   :"<< tri1.area()<<endl;  
    }  
    else  
        cout<<"       "<<endl;  
    return 0;  
}  

私の答え:
/* Copyright (c) 2014,          
 * All rights reserved.
 *     :test.cpp
 *   :   
 *     :2015  3   25  
 *      :v1.0
 *     :       1,main()    ,     Triangle ,         set get    ,          ,       。
 *     :    double   。
 *     :  double       
 */
#include <iostream>
#include <cmath>
using namespace std;
class Triangle
{
public:
    void setA(double x)
    {
        a=x;
    }
    void setB(double y)
    {
        b=y;
    }
    void setC(double z)
    {
        c=z;
    }
    double getA(void)
    {
        return a;
    }
    double getB(void)
    {
        return b;
    }
    double getC(void)
    {
        return c;
    }
    bool isTriangle();   //          
    double perimeter(void);   //         
    double area(void);     //            
private:
    double a,b,c;   //          
};
int main()
{
    Triangle t;   //           (  )  
    double x,y,z;
    cout<<"         :";
    cin>>x>>y>>z;
    t.setA(x);
    t.setB(y);
    t.setC(z);   //       
    if(t.isTriangle())
    {
        cout<<"    :"<<t.getA()<<','<<t.getB()<<','<<t.getC()<<endl;
        cout<<"       :"<<t.perimeter()<<'\t'<<"   :"<<t.area()<<endl;
    }
    else
        cout<<"       。"<<endl;
            return 0;
}
bool Triangle::isTriangle()
{
    if(a+b>c&&b+c>a&&a+c>b)
        return 1;
    else
        return 0;
}
double Triangle::perimeter(void)
{
    int sum;
    sum=a+b+c;
    return sum;
}
double Triangle::area(void)
{
    double p,s;
    p=(a+b+c)/2;
    s=sqrt(p*(p-a)*(p-b)*(p-c));
    return s;
}

勉强の心得:今回は顺调に书いて、顽张りましょう!!