栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c++ 计算多图形面积

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c++ 计算多图形面积

Total Submissions: 250 Accepted: 170 Creator: szmtczg
Problem Description
计算图形面积
(1)定义类Shape(形状)、Circle(圆)、Rectangle(长方形)、Square(正方形)。
Shape是抽象基类,Circle、Rectangle、Square是它的派生类
(2)分别计算1个半径为1.5的圆、1个长为2.8,宽为4.5的长方形、1个边长为3.6的正方形的面积,并把它们显示在屏幕上。
完善以下程序
//你的代码写在这里
int main()
{
Shape* ps;
Circle c1(1.5);
ps = &c1;
cout << “圆的面积为:” << ps->Area() << endl;
Rectangle r1(2.8, 4.5);
ps = &r1;
cout << “长方形的面积为:” << ps->Area() << endl;
Square s1(3.6);
ps = &s1;
cout << “正方形的面积为:” << ps->Area() << endl;
return 0;
}

Sample Output
圆的面积为:7.065
长方形的面积为:12.6
正方形的面积为:12.96

#include 
using namespace std;
const double PI = 3.14;

class Shape
{
public:
	virtual double Area() = 0;
	
};

class Circle : public Shape
{
public:
	double r;
	Circle(double a)
	{
		r = a;
	}
	double Area()
	{
		return PI * r * r;
	}
};

class Rectangle :public Shape
{
public:
	double x, y;
	Rectangle(double a,double b)
	{
		x = a;
		y = b;
	}
	double Area()
	{
		return x * y;
	}
};

class Square :public Shape
{
public:
	double x;
	Square(double a)
	{
		x = a;
	}
	double Area()
	{
		return x * x;
	}
};

int main()
{
	Shape* ps;
	Circle c1(1.5);
	ps = &c1;
	cout << "圆的面积为:" << ps->Area() << endl;
	Rectangle r1(2.8, 4.5);
	ps = &r1;
	cout << "长方形的面积为:" << ps->Area() << endl;
	Square s1(3.6);
	ps = &s1;
	cout << "正方形的面积为:" << ps->Area() << endl;
	return 0;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/664787.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号