第四周實驗報告 任務一

/* (程序頭部註釋開始)
* 程序的版權和版本聲明部分
* Copyright (c) 2011, 煙臺大學計算機學院學生 
* All rights reserved.
* 文件名稱:三角形類                              
* 作    者:韓冰                              
* 完成日期:   2012  年     月  日
* 版 本 號:         

* 對任務及求解方法的描述部分
* 輸入描述:略 
* 問題描述:略 
* 程序輸出:見圖示 
* 程序頭部的註釋結束
*/

#include <iostream> 

#include <cmath>

using namespace std; 

class Triangle 
{
public: 

	void Setabc(float x, float y, float z);//置三邊的值,注意要能成三角形 

	void Getabc(float *x, float *y, float *z);//取三邊的值 

	float Perimeter(void);//計算三角形的周長 

	float Area(void);//計算並返回三角形的面積 

private:

	float a, b, c; //三邊爲私有成員數據 
};

void main(void) 
{  
	Triangle Tri1; //定義三角形類的一個實例(對象) 

	Tri1.Setabc (4, 5, 6); //爲三邊置初值 

	float x, y, z; 

	Tri1.Getabc (&x, &y, &z);    //將三邊的值爲 x,y,z賦值 

	cout << "三條邊爲:" << x << '\t' << y << '\t' << z << endl; 

	cout << "三角形的周長爲:" << Tri1.Perimeter()<<'\t'<<"面積爲:"<< Tri1.Area()<<endl; 

	system ("pause");
} 
//請在下面定義 Triangle 類中的各個成員函數 

void Triangle::Setabc(float x, float y, float z)
{
	if (!(x + y < z || x + z < y || z + y < x))
	{
		a = x;

		b = y;

		c = z;
	}
}

void Triangle::Getabc(float *x, float *y, float *z)
{
	*x = a;

	*y = b;

	*z = c;
}

float Triangle::Perimeter(void)
{
	return a + b + c;
}

float Triangle::Area(void)
{
	float p = (a + b + c) / 2;

	return sqrt(p * (p - a)* (p - b) * (p - c)); 
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章