第四周项目一三角形类的构造函数(2)
来源:互联网 发布:淘宝号几单有一心 编辑:程序博客网 时间:2024/06/16 11:01
问题及代码:
/* * Copyright (c) 2014, 烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称:test.cpp * 作 者:郝俊宇 * 完成日期:2015年 3 月30 日 * 版 本 号:v1.0 * * 问题描述:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化,可以由下面的类声明开始,需要自己实现相关的成员函数,以及增加要求的构造函数(2)设计默认构造函数,即不指定参数时,默认各边长为1。 * 输入描述:无 * 程序输出:三角形的周长,面积 */ #include <iostream>#include <cmath>#include <cstdlib>using namespace std;class Triangle{public: Triangle (double x=1,double y=1,double z=1):a(x),b(y),c(z) {} double perimeter();//计算三角形的周长 double area();//计算并返回三角形的面积 void showMessage();private: double a,b,c; //三边为私有成员数据};void Triangle::showMessage(){ if(a+b>c&&a+c>b&&b+c>a) { cout<<"三角形的三边长分别为:"<<a<<' '<<b<<' '<<c<<endl; cout<<"该三角形的周长为"<<perimeter()<<",面积为:"<<area()<<endl<<endl; } else { cout<<"不能构成三角形"<<endl; exit(0); }}double Triangle::area(){ double t; t=(a+b+c)/2; return (sqrt(t*(t-a)*(t-b)*(t-c)));}double Triangle::perimeter(){ return a+b+c;}int main(){ Triangle Tri;//调用默认构造函数,不指定参数时,默认各边长为1; Tri.showMessage(); return 0;}
运行结果:
知识点总结:
默认构造函数的应用
学习心得:
开始程序写对了,运行结果出来之后,脑抽的认为三边都为1,不能构成三角形,就把这个程序改了又改,但是怎么改结果都一样,后来和同学一说,才发现自己错了。
0 0
- 第四周 项目一 三角形类的构造函数2
- 第四周项目一三角形类的构造函数-2
- 第四周项目一 三角形的构造函数(2)
- 第四周项目一:三角形类的构造函数(2):默认构造函数
- 第四周 项目一--三角形类的构造函数(2)默认构造函数
- 第四周项目一 (2) 三角形类的构造函数 默认构造函数
- 第四周项目一—三角形类的构造函数
- 第四周 项目一-三角形类的构造函数
- 第四周项目一 三角形类的构造函数
- 第四周项目一 三角形类的构造函数 4
- 第四周 项目一三角形类的构造函数
- 第四周项目一 三角形类的构造函数
- 第四周 项目一 三角形类的构造函数1
- 第四周项目一 三角形类的构造函数
- 第四周项目一三角形类的构造函数-1
- 第四周项目一三角形类的构造函数-3
- 第四周项目一三角形类的构造函数-4
- 第四周 项目一 三角形类的构造函数
- 配置mysql5.5主从服务器(转)
- 判断ip是否合法
- android视频监控的解决方案探讨
- kettle连接数据库报错:Error occured while trying to connect to the datab
- 找出500以内相加等于500的连续整数
- 第四周项目一三角形类的构造函数(2)
- 第三周项目4——指向学生类的指针
- 存储性 XSS
- React Native使用初探 --------- OpenGL应用
- android中invalidate()的自动清屏含义以及屏幕刷新
- NOJ 网络赛 L题 送花
- 1.9
- maven开发环境的配置
- 【LeetCode】Search in Rotated Sorted Array II 解题报告