三角形类3--程序的多文件组织

输入代码:

/*
* Copyright (c) 2015, 烟台大学计算机学院
* All rights reserved.
* 文件名称:sum123.cpp
* 作    者:林海云
* 完成日期:2015年3月24日
* 版 本 号:v2.0
*
* 问题描述: 利用多文件组织,重新实现项目2。其中,整个项目包括3个文件:
主文件:main.cpp,用于定义main()函数
头文件:triangle.h,头文件,声明类,定义内置成员函数
类定义文件:triangle.cpp,用于定义类Triangle中其他成员函数

注意,将3个set函数和3个get函数设计成内置成员函数,其他函数不作为内置函数。

* 输入描述: 三角形三边;
* 程序输出: 三角形边长,周长,面积或者无法构成三角形。


主文件:main.cpp


 

#include<iostream>   
#include "Triangle.h"   
using namespace std;  

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


头文件:triangle.h

#ifndef TRIANGLE_H_INCLUDED   
#define TRIANGLE_H_INCLUDED 

class Triangle
{
public:
    void setA(double x)
    {
        a=x;
    }
    void setB(double y)
    {
        b=y;
    }
    void setC(double z)
    {
        c=z;
    }
    double getA()
    {
        return a;
    }
    double getB()
    {
        return b;
    }
    double getC()
    {
        return c;
    }
    bool isTriangle();
    double perimeter();
    double area();
private:
    double a,b,c;
};  


类定义文件:triangle.cpp

#include "Triangle.h"   
#include <Cmath>   

bool Triangle::isTriangle()
{
    return ((a+b>c)&&(a+c>b)&&(b+c>a));
}
double Triangle::perimeter()
{
    double C;
    C=a+b+c;
    return  C;
}
double Triangle::area()
{
    double S,p;
    p=(a+b+c)/2;
    S=sqrt(p*(p-a)*(p-b)*(p-c));
      return S;
}

运行结果:


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

潇潇雨歇_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值