/*
【项目1】设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
* 程序的版权和版本声明部分
* Copyright (c)2012, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: object.cpp
* 攻城菜鸟:蛋蛋
* 完成日期: 2013年 4 月 3 日
* 版本号: v1.0
* 输入描述:用参数初始化表给矩形两边赋初值
* 问题描述:设计求矩形周长和面积以及对角线长的类。
* 程序输出:矩形的周长和面积及对角线长
*/
#include<iostream>
#include<cmath>
using namespace std;
class Orthogon
{public:
double perimeter(void);//计算矩形的周长
double area(void);//计算并返回矩形的面积
double diagonal(void);
void judge();
void showMessage();
//Orthogon();
Orthogon(double x=1,double y=1):a(x),b(y){};
private:
double a,b; //两边为私有成员数据
};
/*Triangle::Triangle(){
a=1;
b=1;
c=1;
}*/
/*Triangle::Triangle(double x,double y,double z):a(x),b(y),c(z){
a=x;
b=y;
c=z;
}*/
void Orthogon:: showMessage(){
cout<<"矩形的两边长分别为:"<<a<<" "<<b<<endl;
cout<<"该矩形的周长为:"<< perimeter()<<'\t'<<"面积为:"<< area()<<'\t'<<"对角线长为"<<diagonal()<<endl;
judge();
}
double Orthogon::perimeter(void){
return (a+b)*2;
}
double Orthogon::area(void){
return a*b;
}
double Orthogon::diagonal(void){
return sqrt(pow(a,2)+pow(b,2));
}
void Orthogon::judge(){
if(a==b)
cout<<"该矩形是正方形"<<endl;
else
cout<<"该矩形不是正方形"<<endl;
}
void main(void)
{
Orthogon Ort1; //定义矩形类的一个实例(对象),要求执行一个默认构造函数,两边初值均为1
Ort1.showMessage();
Orthogon Ort2(7,8); //定义矩形类的一个实例(对象)
Ort2.showMessage();
}