2012年 上半年 第四周 C++程序设计 (八)

原创 2012年03月22日 22:58:19

定义一个三角形类,给出各成员函数的定义

 

#include <iostream>

#include <Cmath> 
  
using namespace std; 
 
class Triangle
{
private:  
	float a,b,c;  //三边为私有成员数据

public: 
	void Setabc(float x,float y,float z);   //置三边的值,注意要能成三角形
	void Getabc(float *x,float *y,float *z);   //取三边的值
	float Perimeter(void);   //计算三角形的周长 
	float Area(void);   //计算并返回三角形的面积
};  


void main(void)
{
	Triangle Tri1;   //定义三角形的一个对象
	Tri1.Setabc(3,4,5);   //为三角形置初值
	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;
}

//下面是定义Triangle类中的各个成员函数

void Triangle::Setabc(float x,float y,float z)
{
	if(x+y>z && x+z>y && y+z>x && x-y<z && x-z<y && y-z<x && y-x<z && z-x<y && z-y<x)
	{
		a = x;
		b = y;
		c = z;
	}
	else
		cout << "您输入的三边无法构成三角形,请重新输入"<< endl;
}
void Triangle::Getabc(float *x,float *y,float *z)
{
	*x = a;
	*y = b;
	*z = c;
}

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

float Triangle::Area(void)
{
	float s,p;
	p = (a+b+c)/2;
	s = sqrt(p*(p-a)*(p-b)*(p-c));

	return s;
}


 

 

 总结:开学不知不觉第四周了,再往前看看到半年加一个月了,日子过得挺快但知识长得就不太乐观了!

2012年 上半年 第四周 C++程序设计 (十)

【任务4】阅读教材P255例8.4,注意到类中的数据成员可以是数组。设计一个工资类(Salary),其中的数据成员有:double型数组salary[50](实际人数可以少于50,固定取50可能造成空...
  • taipingshaoye2012
  • taipingshaoye2012
  • 2012年03月26日 18:57
  • 234

2012年 上半年 第四周 C++程序设计 (九)

设计一个“正整数”类,并通过一系列的成员函数对其性质进行做出判断或列出相关联的数值。下面给出类声明,请实现各成员函数。另外,模仿已经给出的main()函数,完成你所设计的各个成员函数的测试。 #in...
  • taipingshaoye2012
  • taipingshaoye2012
  • 2012年03月26日 18:49
  • 192

2012年 上半年 第十四周 C++程序设计 (四十二)

【任务】建立专门的链表类处理有关动态链表的操作 动态链表也是程序设计中的一种非常有用的数据结构。可以说,是否能够理解有关操作的原理,决定了你是否有资格称为“科班”出身。在C++程序设计中解决相关问题不...
  • taipingshaoye2012
  • taipingshaoye2012
  • 2012年06月04日 19:24
  • 1594

2012年 上半年 第十四周 C++程序设计 (四十一)

【任务1】建立专门的数组类处理有关数组的操作 数组是几乎所支持的组织数据的方法。C和C++对数组类型提供了内置支持,使我们利用数组实现软件中需要的各种实用的功能。但是,这种支持仅限于用来读写单个元素...
  • taipingshaoye2012
  • taipingshaoye2012
  • 2012年06月04日 18:54
  • 502

2012年 上半年 第三周 C++程序设计 (六)

按要求添加程序   #include using namespace std; class Time { public: void set_time( );...
  • taipingshaoye2012
  • taipingshaoye2012
  • 2012年03月19日 19:03
  • 513

2012年 上半年 第三周 C++程序设计 (四)

任务:声明一个类,对其熟练应用。 #include using namespace std; class Student { public:  void set_data(int n, ...
  • taipingshaoye2012
  • taipingshaoye2012
  • 2012年03月12日 18:19
  • 227

2012年 上半年 第三周 C++程序设计 (五)

改错 原错误代码 #include using namespace std; class Time {                                           ...
  • taipingshaoye2012
  • taipingshaoye2012
  • 2012年03月12日 18:51
  • 420

2012年 上半年 第二周 C++程序设计 (三)

/*(3‐1)输入一行字符,统计其中有多少个单词。每两个单词之间以空格(可能多个)隔 开,或者由标点符号(只考虑 , . ; ? !共5 种)隔开。 如输入: How old are your? I...
  • taipingshaoye2012
  • taipingshaoye2012
  • 2012年03月12日 18:03
  • 670

2012年 上半年 第六周 C++程序设计 (十九)

【任务】将任务4的解决用一个项目多个文件的方式实现,其中两个类的声明放在一个.h文件中,每个类的成员函数分别放一个文件,main()函数用一个文件。体会这样安排的优点。   文件 CTriang...
  • taipingshaoye2012
  • taipingshaoye2012
  • 2012年04月02日 18:14
  • 232

2012年 上半年 第三周 C++程序设计 (七)

【题目】仿照你阅读过的程序,编写基于对象的程序,求3个长方柱的体积。数据成员包括长(length)、宽(width)、高(heigth)、体积,要求用成员函数实现下面的功能: (1)由键盘输入3个长...
  • taipingshaoye2012
  • taipingshaoye2012
  • 2012年03月22日 21:50
  • 253
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:2012年 上半年 第四周 C++程序设计 (八)
举报原因:
原因补充:

(最多只允许输入30个字)