iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Problem G: 求图形的面积和体积
  • 360
分享到

Problem G: 求图形的面积和体积

ideGraphicci 2023-05-25 22:05:31 360人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

HomeWEB BoardProblemSetStandingStatusStatisticsProblem G: 求图形的面积和体积Time Limit: 1 Sec    Memory Limit:

Home

WEB Board

ProblemSet

Standing

Status

Statistics


Problem G: 求图形的面积和体积


Time Limit: 1 Sec    Memory Limit:  128 MB  

Submit: 3350  

Solved: 2062  

[Submit][Status][

Web Board]


Description



根据不同的图形,求面积或体积输出。圆周率取3.14。



main()函数中使用多态的思想,用派生树上最早祖先类Graphic的指针创建和访问其孩子类的对象。



图形(Graphic类)分作平面图形(Shape类)和立体图形(Solid类)两种。



正方形(Square类)是一种平面图形,圆形(Circle)也是。



球体(Ball类)是一种立体图形,也是圆形的扩充。



立方体(Cube类)是一种立体图形,也是正方形的扩充。



-----------------------------------------------------------------------------



你设计一系列类,满足上述派生树的要求,使得main()函数能够正确运行。



函数调用格式见append.cc。



append.cc中已给出main()函数。



-----------------------------------------------------------------------------



Input



输入的第一个整数n(n<100),表示有n组测试数据。每组测试数据由两部分组成:一是图形的类型,有“square”、“cube”、“ball”、“circle”四种,分别表示正方形、立方体、球体、圆形;二是这种图形的边长或者半径,用double类型存储。



Output



每组测试数据给出一行输出。



对应这四种不同的图形,分别产生四种输出:



正方形输出:“Square, side:x, area:y.”,x为输入的边长,y为面积。



立方体输出:“Cube, side:x, area:y, volume:z.”,x为输入的边长,y为表面积,z为体积。



球体输出:“Ball, radius:x, area:y, volume:z.”,x为输入的半径,y为表面积,z为体积。



圆形输出:“Circle, radius:x, area:y.”,x为输入的半径,y为面积。



Sample Input



6square 3cube 3ball 4circle 4cube 2circle 1



Sample Output



Square, side:3, area:9.Cube, side:3, area:54, volume:27.Ball, radius:4, area:200.96, volume:200.96.Circle, radius:4, area:50.24.Cube, side:2, area:24, volume:8.Circle, radius:1, area:3.14.



HINT

Append Code



append.cc,

[  Submit][Status][Web Board]


한국어<  中文 فارسی English ไทย All Copyright Reserved 2010-2011  SDUSTOJ TEAM
GPL2.0 2003-2011 HUSTOJ Project TEAM
Anything about the Problems, Please Contact Admin:admin


#include <iOStream>
using namespace std;
class Graphic
{
public:
    virtual void show() const  = 0;
public:
    Graphic() { }
};
class Shape :virtual public Graphic
{
public:
    void show()const  {  }
public:
    Shape() {  }
};
class Square :virtual public Shape
{
public:
    void show() const { cout << "Square, side:" << side << ", area:" << side * side << "." << endl; }
public:
   Square(double s) : side(s) { }
protected:
    double side;
};
class Circle :virtual public Shape
{
public:
    void show() const { cout << "Circle, radius:" << radius << ", area:" << radius * radius * 3.14 << "." << endl; }
public:
   Circle(double r) : radius(r) { }
protected:
    double radius;
};
class Solid :virtual public Graphic
{
public:
    void show()const  {  }
public:
    Solid() {  }
};
class Ball :public Solid, public Circle
{
public:
    void show() const { cout << "Ball, radius:" << radius << ", area:" << radius * radius * 3.14 * 4<< ", volume:" << 4 / 3 *radius * radius * radius * 3.14  << "." << endl; }
public:
    Ball(double r) : Circle(r) {  }
};
class Cube : public Solid, public Square
{
public:
    void show() const { cout << "Cube, side:" << side << ", area:" << side * side * 6<< ", volume:" <<  side * side * side << "." << endl; }
public:
    Cube(double s) : Square(s) {  }
};
 
int main()
{
    Graphic *gp[100];
    int cases;
    cin>>cases;
    for(int i = 0; i < cases; ++i)
    {
        string types;
        double value;
        cin>>types>>value;
        if(types == "square")
            gp[i] = new Square(value);
        if(types == "cube")
            gp[i] = new Cube(value);
        if(types == "ball")
            gp[i] = new Ball(value);
        if(types == "circle")
            gp[i] = new Circle(value);
    }
    for(int i = 0; i < cases; ++i)
    {
        gp[i]->show();
        delete gp[i];
    }
}

--结束END--

本文标题: Problem G: 求图形的面积和体积

本文链接: https://www.lsjlt.com/news/218562.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Problem G: 求图形的面积和体积
    HomeWeb BoardProblemSetStandingStatusStatisticsProblem G: 求图形的面积和体积Time Limit: 1 Sec    Memory Limit: ...
    99+
    2023-05-25
    ide Graphic ci
  • javascript怎么求图形的面积
    这篇文章主要讲解了“javascript怎么求图形的面积”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript怎么求图形的面积”吧! ...
    99+
    2024-04-02
  • MATLAB如何求不规则图形面积
    要求解不规则图形的面积,可以使用MATLAB的polyarea函数。polyarea函数的用法如下:area = polyarea(...
    99+
    2023-09-14
    matlab
  • php怎么求矩形的周长和面积
    要求一个矩形的周长和面积,需要知道矩形的边长。首先,假设矩形的长为L,宽为W。矩形的周长可以通过将长和宽相加,并将结果乘以2来计算:...
    99+
    2023-08-29
    php
  • 如何用python求梯形面积
    可以使用以下代码来求解梯形面积:```def calculate_trapezoid_area(base1, base2, heig...
    99+
    2023-10-07
    python
  • php怎么求三角形面积
    使用以下公式来计算三角形的面积:面积 = 底边长度 * 高 / 2假设有三个变量 $base,$height 和 $area,其中 ...
    99+
    2023-08-29
    php
  • Python学习4:计算几何形状的表面积与体积
    输入一个表示几何形状名称的字符串,再在一行内输入这种图形的数据,根据表示名称的字符串选择合适的公式计算几何形状的(表)面积和体积,若为二维图形,只计算面积,若为三维图形,计算其表面积与体积,结果严格保留2位小数。‪‬‪‬‪‬‪‬‪‬‮‬‪‬...
    99+
    2023-09-22
    学习 python
  • 怎么用python求三角形面积
    可以使用海伦公式来求解三角形的面积。假设三角形的三边长度分别为a、b、c,则三角形的半周长s可以计算为s=(a+b+c)/2。根据海...
    99+
    2023-10-07
    python
  • chatgpt赋能python:Python计算球的表面积和体积
    Python计算球的表面积和体积 介绍 球是几何图形中最简单而又最常见的形状之一。计算球的表面积和体积是物理学、化学、工程学等领域中常见的问题。Python作为一种强大的编程语言,可以用来求解这些问题...
    99+
    2023-10-22
    chatgpt 人工智能 计算机
  • C++计算圆形、矩形和三角形的面积
    题目描述 运用多态编写程序,声明抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea...
    99+
    2024-04-02
  • 利用python怎么计算图形面积
    利用python怎么计算图形面积?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。python可以做什么Python是一种编程语言,内置了许多有效的工具,Python几乎无所不能,...
    99+
    2023-06-06
  • PHP如何求圆的周长和面积
    在PHP中,可以使用以下代码来计算圆的周长和面积:```php```上述代码中,使用`pi()`函数获取圆周率π的值,然后使用半径和...
    99+
    2023-08-29
    PHP
  • python怎么求圆的面积
    要求一个圆的面积,需要知道圆的半径。然后使用以下公式来计算圆的面积:面积 = π * 半径的平方在Python中,可以使用math模...
    99+
    2023-08-17
    python
  • 怎么用js快速求出三角形面积
    这篇文章主要讲解了“怎么用js快速求出三角形面积”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用js快速求出三角形面积”吧! ...
    99+
    2024-04-02
  • chatgpt赋能python:如何用Python计算球的表面积和体积
    如何用Python计算球的表面积和体积 球体是数学中的常见图形,计算球的表面积和体积是科学研究和应用中的重要问题。Python作为一种高效、易学、广泛使用的编程语言,可以很方便地用于计算球的表面积和体...
    99+
    2023-09-30
    chatgpt python 人工智能 计算机
  • javascript怎么求圆的面积和周长
    这篇文章主要讲解了“javascript怎么求圆的面积和周长”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript怎么求圆的面积和周长”吧! ...
    99+
    2024-04-02
  • JavaScript怎么求圆的面积
    在前端开发中,我们经常需要计算圆的面积,特别是在绘制圆形图表或者计算圆形物体的大小时。而在JavaScript中,我们可以通过以下公式来求圆的面积:圆的面积 = π * r²其中,π是一个数学常数,约等于3.14;r代表圆的半径。因此,如果...
    99+
    2023-05-14
  • C++如何计算圆形、矩形和三角形的面积
    这篇文章主要介绍“C++如何计算圆形、矩形和三角形的面积”,在日常操作中,相信很多人在C++如何计算圆形、矩形和三角形的面积问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++如何计算圆形、矩形和三角形的面积...
    99+
    2023-06-22
  • C#怎么计算不同形状图像的面积
    这篇文章主要介绍“C#怎么计算不同形状图像的面积”,在日常操作中,相信很多人在C#怎么计算不同形状图像的面积问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C#怎么计算不同形状图像的面积”的疑惑有所帮助!接下来...
    99+
    2023-06-17
  • 怎么使用javascript求圆的面积
    小编给大家分享一下怎么使用javascript求圆的面积,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!计算圆面积的方法:1、创建input标签,接收半径的值;2、使用“document.getElementById(...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作