第五周上机实践项目——项目1-三角形类雏形-(4)
2016-03-26 12:14
375 查看
/* *Copyright (c)2016,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp *作 者:郭永恒 *完成日期:2016年3月26日 *版 本 号:v1.0 * *问题描述: 使用有默认参数的构造函数 */ #include <iostream> #include <cmath> using namespace std; class Triangle { public: Triangle(double x = 1.0, double y = 1.0, double z = 1.0): a(x),b(y),c(z) {}//构造函数 void setABC(double x, double y, double z); double perimeter();//计算三角形周长 double area();//计算三角形面积 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;} void showMessage();//显示三角形的信息 bool isTriangle() { if(a+b > c && a+c > b && b+c > a) return true; else return false; } private: double a,b,c; }; void Triangle::showMessage() { if(isTriangle()) { cout << "三条边为:" << a << "," << b << "," << c << endl; cout << "三角形的周长为:" << perimeter() << "\t" << "面积为:" << area() << endl; } else cout << "不能构成三角形" << endl; } void Triangle::setABC(double x, double y, double z) { a = x; b = y; c = z; } 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)); }; int main() { Triangle Tri1; Tri1.showMessage(); Triangle Tri2(1.5); Tri2.showMessage(); Triangle Tri3(1.5,1.5); Tri3.showMessage(); Triangle Tri4(7,8,9); Tri4.showMessage(); return 0; }
运行结果:
相关文章推荐
- java,二进制转换为十进制,valueof和parseInt的区别
- 对this的浅显的理解
- Caused by: org.springframework.beans.NullValueInNestedPathException: Invalid property 'xxxx'
- leetcode 2. Add Two Numbers
- HDU 1542 Atlantis(矩形并的面积)
- 面向对象基础——构造方法与匿名对象
- 扣丁学堂笔记第09天Intent
- 自定义Spinner
- smart pointer
- Orchard源码分析(7.1):Routing(路由)相关
- 第六届CCF计算机职业资格认证考试题解(C++)
- HDU 1255 覆盖的面积(矩形交的面积)
- POSIX标准总体分析
- <LeetCode OJ> 338. Counting Bits
- 捎带确认
- Dialog&&Toast&&Menu
- 异常处理
- 我的第一个开源控件-DragGridView
- 站在巨人的肩膀上学习Android开发
- Assigning retained object to unsafe property;object will be released after assignment