问题及代码 :
/*
*Copyright (c) 2016,烟台大学计算机学院
*All rights reserved.
*文件名称 :
*作 者 : 刘云
*完成日期 : 2016年3月12号
*版 本 号 : v1.0
*
*问题描述 : c++例4-2
*输入描述 : point类的完整程序
*程序输出 :
*/
#include<iostream>
#include<cmath>
using namespace std;
class triangle
{
public:
triangle(int x,int y,int z);
void setABC(int x,int y,int z);
void showmessage();
int getA(){return a;}
int getB(){return b;}
int getC(){return c;}
bool istriangle();
double perimeter();
double area();
private:
int a,b,c;
};
triangle::triangle(int x,int y,int z)
{
a=x;
b=y;
c=z;
}
void triangle::showmessage()
{
if(istriangle())
{
cout<<"三条边为:"<<getA()<<','<<getB()<<','<<getC()<<endl;
cout<<"三角形的周长为:"<<perimeter()<<'\n'<<"面积为:"<<area()<<endl;
}
else
cout<<"不能构成三角形"<<endl;
}
bool triangle::istriangle()
{
if(a+b>c&&a+c>b&&b+c>a)
return true;
else
return false;
}
double triangle::area()
{
double p=(a+b+c)/2.0;
return sqrt(p*(p-a)*(p-b)*(p-c));
}
double triangle::perimeter()
{
return 2.0*(a+b+c);
}
int main()
{
triangle tri1(7,8,9);
tri1.showmessage();
return 0;
}
运行结果:
知识点总结 :
从这个过程中,进一步巩固了对简单程序结构的认识,也学会了计算自顶向下由简及深的方法
学习心得 :从现在开始,我要认真学习C++,巩固知识点,在这个领域做到最好。