例题:写一个程序,定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用函数printArea分别输出面积...【面向对象设计】

第十三周任务三(义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)) 问题描述:定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。用如下的mian()函数,求出定义的几个几何体的面积和。 #include using namespace std; class Shape { public: virtual double area()=0;//将area定义为纯虚函数,使Sh 阅读详情

题目:

写一个程序,定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三只的面积,3个图形的数据在定义对象时给出。

解答: 

代码如下:
#include <iostream>
using namespace std;
///基类Shape
class Shape
{
public:
	void virtual printArea() = 0;//纯虚函数
};

//派生类Circle
class Circle : public Shape
{
public:
	Circle(double r = 0):radius(r){}//构造函数
	void printArea(){cout<<3.14159 * radius * radius<<endl;}
private:
	double radius;//数据成员,表示半径
};

//派生类Rectangle
class Rectangle : public Shape
{
public:
	Rectangle(double w,double h):width(w),height(h){}//构造函数
	void printArea(){cout<<width * height<<endl;}
private:
	double width;//数据成员,表示宽
double height;//数据成员,表示长
};

//派生类Triangle
class Triangle : public Shape
{
public:
	Triangle(double w,double h):width(w),height(h){} //构造函数
	void printArea(){cout<<width * height * 0.5<<endl;}
private:
	double width;//数据成员,表示底
double height;//数据成员,表示高
};

//主函数
int main()
{
	Shape *s;
	Circle circle(1.0);
	Rectangle rectangle(1.0,1.0);
	Triangle triangle(1.0,1.0);
	s = &circle;
	s->printArea();
	s = &rectangle;
	s->printArea();
	s = &triangle;
	s->printArea();
	return 0;
}

 

第十三周【任务三】【任务3】写一个程序,定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。 【任务3】写一个程序,定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。用如下的mian()函数,求出定义的几个几何体的面积和。 int main() {  Circle c1(12.6),c2(4.9);    //建立Circle类对象c1,c2,参数为圆半径  Rectangle r1(4.5,8.4),r2( 阅读详情

相关推荐

C++ 7-2抽象基类Shape派生3个类(PTA题目)

声明抽象基类Shape,由它派生出三个类,圆形Circle,矩形Rectangle,三角形Triangle,用一个函数输出三个面积。 输入格式: 在一行中依次输入5个数,圆的半径,长方形的高和宽,三角形的高和底,中间用空格分隔 输出格式: 圆的面积,长方形的面积,三角形的面积,小数点后保留2位有效数字,每个面积占一行。 输入样例: 在这里给出一组输入。例如: 3 3 4 3 4 输出样例: 在这里给出相应的输出。例如: 28.27 12.00 6.00 参考答案: #include <iostre

vegitb_ciaken的博客 2992

编写一个程序,声明抽象基类Shape,由它派生出3个派生类:Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积,3个图形的

编写一个程序,声明抽象基类Shape,由它派生出3个派生类:Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积,3个图形的数据在定义对象时给定。 #include<iostream> using namespace std; class Shape { public: virtual double area() const=0; }; class Circle:public Shape { public

AKK188888881的博客 1万+

谭浩强C++课后习题38——抽象基类派生

谭浩强C++课后习题38——抽象基类派生 题目描述:编写一个程序,声明抽象基类Shape,由它派生出3个派生类:Circle(圆形),Rectangle(矩形),Triangle(三角形),用一个函数printArea分别输出以上三者的面积,3个图形的数据在定义对象时给定。 抽象基类:含有纯虚函数的基类,不能直接用于定义对象,可以用来派生新的类,派生出的新类中可以实现纯虚函数,用指向抽象基类的指针...

weixin_45295612的博客 1210

写一个程序,定义抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形)

写一个程序,定义抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积,3个图形的数据在定义对象时给定。 #include using namespace std; class Shape { public: virtual float printArea() const {

w3071206219的博客 8万+

YOLOv11训练命令完全指南:从核心参数解析到高级调优实战(数据配置、epochs设定、batch-size优化与img-size调整)(二)

本文介绍了YOLOv11训练命令的完整配置与解析,提供了基础训练命令示例及参数详解。示例命令包含数据集配置(coco.yaml)、训练轮次(300)、批次大小(64)、图像尺寸(640)等核心参数,以及优化器(AdamW)、学习率(0.001)等调优选项。通过代码实现展示了训练器的初始化流程,包括参数解析、设备设置、数据加载和模型创建等关键步骤,为YOLOv11模型训练提供了实用指导。

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1094

AI绘画与医疗可视化:用AI生成医学插图的实践

医疗可视化是医学教育、临床沟通和学术研究的核心工具。传统医学插图依赖手工绘制或专业3D建模,存在制作周期长、成本高、更新迭代慢等问题。随着深度学习技术的发展,AI绘画工具(如Stable Diffusion、DALL-E)展现出强大的图像生成能力,但医疗领域对插图的解剖准确性、标注规范性和语义完整性有极高要求,通用AI模型难以直接应用。本文聚焦AI技术与医疗领域的交叉创新,系统阐述如何通过数据预处理、模型定制化训练和后处理校验,构建符合医疗标准的插图生成系统。

大模型应用工坊 1788

【C++之纯虚函数与抽象类1】圆形、矩形、三角形的面积

题目要求: 定义抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数 printArea 分别输出以上三者的面积,3个图形的数据在定义对象时给定。 ——谭浩强的《C++面向对象程序设计》第6章习题第4小题.........

霍喜猫的博客 4662

全志 camera: 4路AHD摄像头转MIPI

TP2815 驱动模块主要实现将 4 路的 AHD/TVI/CVBS Camera 的数据转换为 MIPI 数据,从而实现在 T527 端来对数据进行处理和送显。

Linux驱动开发工程师,熟悉Linux/Android底层驱动、TP、显示、IIC、网络等通用外设调试适配,Linux上层应用开发。常用平台瑞芯微、全志、恩智浦等。 9095

java 定义抽象基类shape_由它派生出三个派生类_编写一个程序,声明抽象基类Shape,由它派生出3个派生类:Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个...

编写一个程序,声明抽象基类Shape,由它派生出3个派生类:Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数pritArea分别输出以上三者的面积,3个图形的数据在定义对象时给定。以下是此题的【c++源代码】#include using namespace std;//定义抽象基类Shapeclass Shape{public:virtual double ...

weixin_28568819的博客 3971

Python分布式爬虫深度实战:反爬破解+数据清洗+性能优化全流程

分布式爬虫的核心是“调度中心化+执行分布式”,Scrapy-Redis是最易落地的框架,无需从零写调度逻辑;反爬破解要分级应对:基础反爬靠随机UA/限流,进阶反爬靠代理池,高级反爬靠第三方验证码API;数据清洗的关键是“批量处理+标准化”,避免内存溢出,核心字段去重和异常值过滤是必做步骤;性能优化不是单纯加节点,而是从架构(分片)、代码(批量写入)、服务器(索引/网络)三层协同优化,才能实现效率翻倍。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1200

YOLOv11改进 | 注意力篇 | YOLOv11引入CA注意力机制

摘要:最近关于移动网络设计的研究已经证明了通道注意力(例如,挤压和激励注意力)对于提升模型性能的显着有效性,但它们通常忽略了位置信息,而位置信息对于生成空间选择性注意力图很重要。到此本文的正式分享内容就结束了,在这里给大家推荐我的YOLOv11改进有效涨点专栏,本专栏目前为新开的,后期我会根据各种前沿顶会进行论文复现,也会对一些老的改进机制进行补充,如果大家觉得本文帮助到你了,订阅本专栏,关注后续更多的更新~3.2 在Extramodule里创建CA。在CA.py文件里添加给出的CA代码。

tsg6698的博客 2979

定义抽象基类Shape由他派生出n个派生类,用一个printArea分别输出派生类的面积,派生类的数据定义对象时给定

实验1 写一个程序,定义抽象基类Shape,由他派生出三个派生类:Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积,三个图形的数据在定义对象时给定 代码1 #include<iostream> #include<cmath> using namespace std; #define n 3 //使用宏定义或者const都行 //const int n=3; class Shape{ public:

qq_54388490的博客 2191

Cadence OrCAD Capture CIS元器件管理时ERROR(ORCIS-6454): Temporary part number tracking is turned on报错的解决方法

使用Part manager对工程的元器件进行批量管理时,出现如下图所示的ERROR(ORCIS-6454): Temporary part number tracking is turned on报错其解决方法如下。

fydar的博客 3503

C++ //习题 12.4 写一个程序,定义抽象基类Shape,由它派生出3个派生类:Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出

C++程序设计(第三版) 谭浩强 习题12.4 个人设计 习题 12.4 写一个程序,定义抽象基类Shape,由它派生出3个派生类:Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积,3个图形的数据在定义对象时给定。 代码块: #include &lt;iostream&gt; #include &lt;iomanip&...

Made in Code 1万+

Python在Genesis2000 CAM软件中的编程应用

Genesis2000是一款功能强大的计算机辅助制造(CAM)软件,它提供了广泛的功能和工具,用于帮助制造商进行CAD(计算机辅助设计)到CAM的转换。在Genesis2000中,我们可以利用Python的灵活性和功能来扩展软件的自定义能力,并通过编写脚本来自动化各种制造任务。例如,假设我们需要在Genesis2000中添加一个新的操作,用于自动计算零部件的重量。我们可以编写一个Python脚本,通过遍历模型的几何数据并应用相关的计算公式,来实现这个功能。

PixelEnigma的博客 2423

ABAP CDS HAVING 全解析:聚合之后的精准过滤、最佳实践与可运行示例

摘要: 本文针对具备ABAP与CDS基础的开发者,详解HAVING在ABAP CDS中的核心用法。HAVING专用于过滤GROUP BY后的聚合结果(如SUM、COUNT),与WHERE的分工明确:前者处理聚合值,后者过滤原始记录。通过销售额阈值、质量分析、财务对账三类典型场景,结合性能优化建议(如优先使用WHERE索引过滤),说明实际应用。文中提供经典CDS View与View Entity两种实现代码,并附Open SQL消费示例,帮助开发者快速落地。常见误区(如聚合条件误写至WHERE)与规避方法亦被

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 221

由Shape派生出的抽象基类

Description 编写一个程序,声明抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积(结果保留两位小数),3个图形的数据在定义对象时给定。 Input 圆的半径 矩形的边长 三角形的底与高 Output

hades's stack 1798

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

C++——写一个程序,定义抽象基类,由它派生出3个派生类:圆形、矩形、三角形。用一个函数分别输出以上三者的面积,3个图形的数据在定义对象时给定。

public:public:protected:public:protected:public:protected:int main()return 0;

2303_80770781的博客 400

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

求助贺老师

/*Description 编写一个程序,声明抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积(结果保留两位小数),3个图形的数据在定义对象时给定。 Input 圆的半径 矩形的边长 三角形的底与高 Output 圆的面积 矩形的面积 三角形

u012370419的专栏 894

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

oj抽象类

问题: 程序: 结果:

玲玲的专栏 877

acm 2

/*编写一个程序,声明抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形), 用一个函数printArea分别输出以上三者的面积(结果保留两位小数), 3个图形的数据在定义对象时给定*/ #include #include using namespace std; class Shape { publ

山东Patrick的专栏 656

2020-11-21

编写一个程序,声明抽象基类Shape,由它派生出三个派生类:Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积,3个图形的数据表在定义对象时给定。 #include <iostream> using namespace std; class Shape { public: virtual double area( )const=0; }; class Circle:public Shape { public: Ci

qq_45257495的博客 152

《C++第十三周实验报告3-1》---定义抽象基类Shape,由它派生出3个派生类...

/* 【任务3】写一个程序,定义抽象基类Shape,由它派生出3个派生类, Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。 用如下的mian()函数,求出定义的几个几何体的面积和。 */ /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文...

网站开发初中级代码参考-转载 677

派生类

/* *Copyright (c) 2013 烟台大学计算机与控制工程学院 * All rights reserved * 作 者: 刘慧艳 * 完成日期:2014 年6月20日 * 版 本 号:v1.0 * 问题描述: 编写一个程序,声明抽象基类Shape,由它派生出3个派生类: Circle(圆形)、 Rectangle(矩形)、Triangle(三角形),用一个函数printArea分

u012369153的专栏 520

多态性与虚函数的应用

多态性和虚函数的应用 了解多态性的概念,了解虚函数的作用及使用方法,了解静态关联和动态关联的概念和用法,了解纯虚函数和抽象类的概念和用法。 实验要求: 声明抽象基类Shape,由它派生出3个派生类:Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积,3个图形的数据在定义对象时给定。

chaojidagouzi的博客 792
上一篇: 例题:定义一个复数类Complex,重载运算符“+”、“=”,“*”,“、”,使之能进行复数的加、减、乘、除。...【面向对象设计】
下一篇: 例题:建立一个对象数组,内放5个学生的数据(学号、成绩),用指针指向数组首元素,输出第1,3,5个学生的数据。【面向对象设计】
蓝莓派Alex
博客等级 码龄15年 147粉丝 49原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值