第五周项目(1)-构造三角形类(2)
来源:互联网 发布:mac用什么看文档 编辑:程序博客网 时间:2024/05/01 23:06
/*
*copyright (c) 2016,烟台大学计算机学院
*All rights reserved.
*文件名称:hellow.cpp
*作者:田甜
*完成日期:2016年3月30日
*版本号:v1.0
*
*问题描述:构造三角形类
*输入描述:三角形三边
*程序输出:三角形的周长和面积
*/
问题及代码:
#include<cstdlib>#include<iostream>#include<cmath>using namespace std;class Triangle//定义三角形类{ public: void setABC(double x,double y,double z) { if(x+y>z&&x+z>y&&y+z>x)//判断输入数据是否满足条件并赋值 {a=x;b=y;c=z;} else cout<<"不能构成三角形"<<endl; } 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;};double Triangle::perimeter()//计算周长{ return a+b+c;}double Triangle::area(){ double p=(a+b+c)/2; return sqrt(p*(p-a)*(p-b)*(p-c));//计算面积}bool Triangle::isTriangle(){ return (a+b>c&&b+c>a&&a+c>b);}int main(){ Triangle tri1; double x,y,z; cout<<"请输入三角形的三边:"<<endl; 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; } return 0;}
运行结果:
0 0
- 第五周项目(1)-构造三角形类(2)
- 第五周项目(1)-构造三角形类(3)
- 第五周项目(1)-构造三角形类(4)
- 第五周项目(1)-构造三角形类(5)
- 第五周项目一:三角形类(构造函数)@(1)
- 第五周 项目1 构造三角形类(3)
- 第五周项目-构造三角形类(1)
- 第五周项目1三角形类的构造函数(2)
- 第五周项目1-三角形类的构造函数(2)
- 第五周项目一(2):三角形类(使用默认参数的构造函数)
- 第五周项目一:三角形类(默认构造函数)@(2)
- 第五周项目1三角形类的构造函数(1)
- 第五周项目1-三角形类的构造函数(1)
- 第五周上机时间项目——三角形类的构造函数(2)
- 2013第五周上机任务【项目1 三角形类(构造函数)】
- 第五周项目1:三角形类(有默认参数的构造函数)
- 第五周上机实践项目——三角形类的构造函数(1)
- 第五周项目1三角形类的构造函数(3)
- centos系统下载
- 进程间通讯总结 (5)
- JavaScript中使用ActiveXObject操作本地文件夹的方法
- 为什么要用Fragment.setArguments(Bundle bundle)来传递参数
- Android开发教程(四)
- 第五周项目(1)-构造三角形类(2)
- 如何让git使用vim而不是vi
- poj 2688 Cleaning Robot
- Android开发教程(五)
- Android子线程中更新UI的3种方法
- 表格维护生成器-部分字段不能修改或不能看见
- CAS实现SSO单点登录原理
- 利用EF 插入数据库指定ID
- js笔记3dom