第3周项目3--多文件组织三角形

/*  
 * Copyright (c) 2015, 烟台大学计算机学院  
 * All rights reserved.  
 * 文件名称:test.cpp  
 * 作    者:姜甜甜  
 * 完成日期:2015年 3 月 19日  
 * 版 本 号:v1.0  
 *  
 * 问题描述: 利用多文件组织,实现项目2主文件:
  main.cpp,用于定义main()函数
  头文件: triangle.h,头文件,声明类,定义内置成员函数类
  定义文件: triangle.cpp,用于定义类Triangle中其他成员函数
  注意,将3个set函数和3个get函数设计成内置成员函数,其他函数不作为内置函数。              

main.cpp

#include <iostream>
#include "student.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;
}

student.cpp

#include "student.h"
#include<cmath>
double  Triangle::perimeter()
{
    return x+y+z;
}
double Triangle::area()
{
    double p;
    p=(x+y+z)/2;
    p=sqrt(p*(p-x)*(p-y)*(p-z));
   return p;
}
bool Triangle::isTriangle()
{
    if((x+y)>z&&(x+z)>y&&(y+z)>x)
        return true;
else return false;
}

student.h

#ifndef STUDENT_H_INCLUDED
#define STUDENT_H_INCLUDED

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

#endif // STUDENT_H_INCLUDED





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值