当前位置:编程学习 > C/C++ >>

第五周项目一:三角形类(默认构造函数)@(2)

[cpp]
/*
* 程序的版权和版本声明部分
* Copyright (c)2013, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: date.cpp                           
* 作    者: 李蒙                          
* 完成日期:  2013年 3 月 29  日
* 版本号: v1.0      
* 输入描述:使用有默认参数的构造函数,不给定实参时,默认边长为1;
* 问题描述:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
* 输出:
*/ 
#include<iostream>  
#include<Cmath>  
using namespace std; 
class Triangle 
{public: 
    Triangle (int x=1,int y=1,int z=1); 
    bool isTriangle(); 
    double perimeter(void);//计算三角形的周长  
    double area(void);//计算并返回三角形的面积  
    void showMessage(); 
private: 
    double a,b,c; //三边为私有成员数据  
}; 
Triangle::Triangle(int x,int y,int z) 

    a=x; 
    b=y; 
    c=z; 

bool Triangle::isTriangle()   
{   
    if((a+b)>c&&(a+c)>b&&(b+c)>a)   
        return true;   
    else   
        return false; 
}   
void Triangle:: showMessage() 

    if(isTriangle()){ 
    cout<<"三角形的三边长分别为:"<<a<<" "<<b<<" "<<c<<endl; 
    cout<<"该三角形的周长为:"<< perimeter()<<'\t'<<"面积为:"<< area()<<endl; 
    } 
    else 
        cout<<"三角形的三边长分别为:"<<a<<" "<<b<<" "<<c<<endl; 
        cout<<"不能构成三角形!"<<endl; 

double Triangle::perimeter(void) 

    return (a+b+c); 

double Triangle::area(void) 

    double p; 
    p=(a+b+c)/2; 
    return sqrt(p*(p-a)*(p-b)*(p-c)); 

void main(void) 

    Triangle Tri1;  //定义三角形类的一个实例(对象),要求执行一个默认构造函数,三边初值均为1  
    Tri1.showMessage(); 
    Triangle Tri2(2);   //只给定一个实参  
    Tri2.showMessage(); 

/*
* 程序的版权和版本声明部分
* Copyright (c)2013, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: date.cpp                          
* 作    者: 李蒙                         
* 完成日期:  2013年 3 月 29  日
* 版本号: v1.0     
* 输入描述:使用有默认参数的构造函数,不给定实参时,默认边长为1;
* 问题描述:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
* 输出:
*/
#include<iostream>
#include<Cmath>
using namespace std;
class Triangle
{public:
 Triangle (int x=1,int y=1,int z=1);
 bool isTriangle();
 double perimeter(void);//计算三角形的周长
 double area(void);//计算并返回三角形的面积
 void showMessage();
private:
 double a,b,c; //三边为私有成员数据
};
Triangle::Triangle(int x,int y,int z)
{
 a=x;
 b=y;
 c=z;
}
bool Triangle::isTriangle() 

    if((a+b)>c&&(a+c)>b&&(b+c)>a) 
        return true; 
    else 
        return false;

void Triangle:: showMessage()
{
 if(isTriangle()){
 cout<<"三角形的三边长分别为:"<<a<<" "<<b<<" "<<c<<endl;
 cout<<"该三角形的周长为:"<< perimeter()<<'\t'<<"面积为:"<< area()<<endl;
 }
 else
  cout<<"三角形的三边长分别为:"<<a<<" "<<b<<" "<<c<<endl;
  cout<<"不能构成三角形!"<<endl;
}
double Triangle::perimeter(void)
{
 return (a+b+c);
}
double Triangle::area(void)
{
 double p;
 p=(a+b+c)/2;
 return sqrt(p*(p-a)*(p-b)*(p-c));
}
void main(void)
{
 Triangle Tri1; //定义三角形类的一个实例(对象),要求执行一个默认构造函数,三边初值均为1
 Tri1.showMessage();
 Triangle Tri2(2); //只给定一个实参
 Tri2.showMessage();
}


 

补充:软件开发 , C++ ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,