您的位置:首页 > 其它

第四周项目5--用递归方法求解(3)

2016-03-29 20:10 281 查看
问题及代码:

/*

*copyright (t) 2004,烟台大学计算机学院

*All rights reserved.

*文件名称:test.cpp

*作者:张晴晴

*完成日期:2016年3月29日

*版本号:v1.0

*问题描述::设计一个三角形类带参数的构造函数,三边在调用时由实参直接给出,使对象在定义是能够进行初始化。

*输入描述:a无。

*程序输出:输出三边,面积和周长。

*/

#include<iostream>
#include<cmath>
using namespace std;
class triangle
{
public:
triangle (double x,double y, double z ):a(x),b(y),c(z){};
void setabc(double x,double y,double z);
double perimeter();
double area();
bool   istriangle();
void showmessage();
private:
double a,b,c;
};

int main()
{
triangle tri1(7,8,9);
tri1.showmessage();

return 0;
}
void triangle::setabc(double x,double y,double z)
{

a=x;
b=y;
c=z;
}
double triangle::perimeter()
{
double n;
n=a+b+c;
return n;
}
double triangle::area()
{
double p,m,s;
p=1.0/2*(a+b+c);
m=(p*(p-a)*(p-b)*(p-c));
s=sqrt(m);
return s;
}
bool   triangle::istriangle()
{
if(a+b>c||a-b<c||a+c>b||a-c<b||b-c>a||b-c<a)
return true;
else
return false;
}

void triangle::showmessage()
{
cout<<"三角形的三边为:"<<a<<'  '<<b<<' '<<c<<' '<<endl;
if(istriangle())
{
cout<<"三角形的周长为:"<<perimeter()<<'\t'<<"面积为:"<<area()<<endl;
}
else
cout<<"不能构成三角形"<<endl;
}


运行结果:



知识点总结:

构造函数并不熟练,明白了类的用法。

学习心得:函数在哪定义在哪使用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: