[cpp]
/*
* 程序的版權和版本聲明部分
* Copyright (c)2013, 煙台大學計算機學院學生
* All rightsreserved.
* 文件名稱:score.cpp
* 作 者:張浩
* 完成日期:2013年3月23日
* 版本號: v1.0
* 輸入描述:
* 問題描述:設計求三角形面積和周長的類
* 程序輸出:三角形的面積和周長
*/
#include<iostream>
#include<Cmath>
using namespace std;
class Triangle
{
private:
double a,b,c;//三邊為私有成員數據
public:
void getABC(double *x,double *y,double *z);//取三邊的值
double perimeter(void);//計算三角形的周長
double area(void);//計算並返回三角形的面積
};
void Triangle::getABC(double *x,double *y,double *z)
{
a=*x;b=*y;c=*z;
}
double Triangle::perimeter()
{
double m;
m=a+b+c;
return m;
}
double Triangle::area(void)
{
double s,p;
p=(a+b+c)*0.5;
s=sqrt(p*(p-a)*(p-b)*(p-c));
return s;
}
int main()
{
Triangle tri1;
double x=0,y=0,z=0;
cout<<"請輸入三角形的三條邊長:"<<endl;
cin>>x>>y>>z;
while((x+y <= z) || (x+z <= y) || (y+z <= x))
{
cout<<"不構成三角形!重新輸入吧......"<<endl;
cin>>x>>y>>z;
}
tri1.getABC(&x,&y,&z);
cout<<"三條邊為:"<<x<<'\t'<<y<<'\t'<<z<<endl;
cout<<"三角形的周長為:"<<tri1.perimeter()<<'\n'<<"三角形的面積為:"<<tri1.area()<<endl;
return 0;
}
運行結果: