第十三周任务三(义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形))

本文介绍了如何定义一个抽象基类Shape,并从它派生出Circle、Rectangle和Triangle三个派生类。通过main()函数计算并展示了不同几何体的面积,强调了抽象类在实现多态性和对象数组中的应用。
摘要由CSDN通过智能技术生成

问题描述:定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。用如下的mian()函数,求出定义的几个几何体的面积和。

#include<iostream> 
using namespace std;  
class Shape
{
public:
	virtual double area()=0;//将area定义为纯虚函数,使Shape类为抽象类
};
class Circle:public Shape   //定义圆类
{
public:
	double radius;  //半径成员数据

	Circle(double r):radius(r){}  //构造函数定义
	double area()      //对面积进行重新定义
	{
		return 3.14*radius*radius;

	}
};
class Rectangle:public Shape //定义矩形类
{
public:
	double lon,wide;
	Rectangle(double a,double b):lon(a),wide(b){}
	double area()
	{
		return lon*wide;
	}
};
class 	Triangle:public Shape
{
public:
	double wid,high;
	Triangle(double w,double h):wid(w),high(h){}
	double area()
	{
		return  (wid * high)/2;
	}
};

int main()
{
	Circle c1(12
1、 一个维向量,并定相应的特殊方法实现两个该对象之间的加、减运算(要求支持运算符+、-),实现该对象与标量的乘、除运算(要求支持运算符*、/),以及向量长度的计算(要求使用属性实现)。 2、 编程实现如下功能: (1)定一个抽象Shape,在抽象 Shape中定求面积 getArea()和长 getPerimeter()的抽象方法。 (2)分别定继承抽象Shape的3个子即TriangleRectangle、和Circle,在这3个子中重写 Shape中的方法getArea()和 getPerimeter( )。 (3)创建TriangleRectangleCircle的对象,对3个中的方法进行调用测试。 3、使用第六章(王雷春版)介绍的知识设计一个“书籍租管理系统”,该系统包括以下功能。 (1) 菜单项“1”:显示书籍(包括书籍名称、价格和借状态)。 (2) 菜单项“2”:增加书籍(包括书籍名称和价格)。 (3) 菜单项“3”:借书籍(包括借书籍名称和借天数)。 (4) 菜单项“4”:归还书籍(包括归还书籍名称和应付的租书费)。 (5) 菜单项“5”:统计书籍(包括借书籍册数、未借书籍册数和总册数)。 (6) 菜单项“-1”:退系统。 体会利用面向对象编程的思想。 4、设计一个“超市进销存管理系统”,要求如下: (1)系统包括7种操作,分别是:1查询所有商品;2添加商品;3修改商品;4.删除商品;5卖端口;6.汇总;-1.退系统。 (2)选择操作序号“1”,显示所有商品 (3)选择操作序号“2”,添加新的商品(包括商品名称、数量和进货价格)。 (4)选择操作序号“3”,修改商品 (5)选择操作序号“4”,删除商品 (6)选择操作序号“5”,卖商品(包括商品名称、数量和售价格)。 (7)选择操作序号“6”,汇总当天卖商品,包括每种销售商品名称、数量、进货总价、销售总价等。 (8)选择操作序号“-1”,退系统。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值