作者 周雪芹

单位 山东理工大学

计算如下立体图形的表面积和体积。

从图中观察,可抽取长方体和四棱锥两种立体图形的共同属性到父类Rect中:长度:l 宽度:h 高度:z。

编程要求:

(1)在父类Rect中,定义求底面周长的方法length( )和底面积的方法area( )。

(2)定义父类Rect的子类立方体类Cubic,计算立方体的表面积和体积。其中表面积area( )重写父类的方法。

(3)定义父类Rect的子类四棱锥类Pyramid,计算四棱锥的表面积和体积。其中表面积area( )重写父类的方法。

(4)在主程序中,输入立体图形的长(l)、宽(h)、高(z)数据,分别输出长方体的表面积、体积、四棱锥的表面积和体积。

提示:

(1)四棱锥体积公式:V=31​Sh,S——底面积 h——高

(2)在Java中,利用Math.sqrt(a)方法可以求得a的平方根(方法的参数及返回结果均为double数据类型)

(3)在Python中,利用math模块的sqrt(a)方法,求得a的平方根。

输入格式:

输入多行数值型数据(double);

每行三个数值,分别表示l、h、z,数值之间用空格分隔。

若输入数据中有0或负数,则不表示任何图形,表面积和体积均为0。

输出格式:

行数与输入相对应,数值为长方体表面积 长方体体积 四棱锥表面积 四棱锥体积(中间有一个空格作为间隔,数值保留两位小数)。

输入样例:

1 2 3
0 2 3
-1 2 3
3 4 5

输出样例:

22.00 6.00 11.25 2.00
0.00 0.00 0.00 0.00
0.00 0.00 0.00 0.00
94.00 60.00 49.04 20.00

Code实现:

import math
import abc
class Rect:def __init__(self,l,h,z):self.l=lself.h=hself.z=z@abc.abstractmethoddef lengh(self):return (self.l + self.h) * 2@abc.abstractmethoddef Area(self):return self.l * self.h
class Cubic(Rect):def __init__(self,l,h,z):super().__init__(l,h,z)def V(self):return self.l*self.z*self.hdef Area(self):return (self.h*self.l+self.h*self.z+self.l*self.z)*2
class Pyramid(Rect):def __init__(self,l,h,z):super().__init__(l,h,z)def V(self):return 1/3*self.l*self.h*self.zdef Area(self):a=self.lb=self.hc=self.zp1=math.sqrt(a*a+b*b)p1=p1/2pp=math.sqrt(p1*p1+c*c)h1=math.sqrt(pp*pp-a*a/4)h2=math.sqrt(pp*pp-b*b/4)s1=h1*a/2s2=h2*b/2s3=a*bs4=(s1+s2)*2+s3return s4while True:try:l,h,z=map(float,input().split())if l<=0 or h<=0 or z<=0:print("{:.2f} {:.2f} {:.2f} {:.2f}".format(0,0,0,0))else:c, p = Cubic(l,h,z), Pyramid(l ,h,z)print("{:.2f} {:.2f} {:.2f} {:.2f}".format(c.Area(), c.V(), p.Area(), p.V()))except:break

总结:这题就四棱锥的表面积难求,而且那个底面积周长的类也没用

7-5 sdut-oop-5 计算长方体和四棱锥的表面积和体积(类的继承)(Python实现)相关推荐

  1. 计算长方体、四棱锥的表面积和体积(类)

    Problem Description 计算如下立体图形的表面积和体积. 从图中观察,可抽取其共同属性到父类Rect中:长度:l  宽度:h  高度:z 在父类Rect中,定义求底面周长的方法leng ...

  2. java求长方体_Java练习 SDUT-3337_计算长方体、四棱锥的表面积和体积

    ###计算长方体.四棱锥的表面积和体积 Time Limit: 1000 ms Memory Limit: 65536 KiB ####Problem Description 计算如下立体图形的表面积 ...

  3. PTA 4 sdut-oop-5 计算长方体和四棱锥的表面积和体积(类的继承)分数 20

    这是一道经典的"类与继承"的题型,对与小白来说very nice. 先看题: 计算如下立体图形的表面积和体积. 从图中观察,可抽取长方体和四棱锥两种立体图形的共同属性到父类Rect ...

  4. sdut-oop-5 计算长方体和四棱锥的表面积和体积(类的继承)

    计算如下立体图形的表面积和体积. 从图中观察,可抽取长方体和四棱锥两种立体图形的共同属性到父类Rect中:长度:l 宽度:h 高度:z. 编程要求: (1)在父类Rect中,定义求底面周长的方法len ...

  5. chatgpt赋能python:Python计算球体表面积和体积

    Python计算球体表面积和体积 如果您需要计算球体的表面积和体积,那么Python可以成为您的助手.Python在科学计算领域中越来越受欢迎,因为它是一个灵活且易于使用的语言.Python拥有大量的 ...

  6. 编写程序计算长方体的体积python_编写程序,计算圆柱体、球体、正方体和长方体的表面积和体积...

    编写程序,计算圆柱体.球体.正方体和长方体的表面积和体积. #include "" #include"" class Shape { protected: in ...

  7. 6-2 计算长方体的表面积和体积

    请完成相关代码,实现长方体的表面积和体积的计算 函数接口定义: 请详细参见主程序的调用方式. 裁判测试程序样例: import java.util.Scanner; /* 你的代码将被嵌入到这里 */ ...

  8. 6-4 计算长方体的表面积和体积 (10分) java pta

    请完成相关代码,实现长方体的表面积和体积的计算 函数接口定义: 请详细参见主程序的调用方式. 裁判测试程序样例: import java.util.Scanner; /* 你的代码将被嵌入到这里 */ ...

  9. PTA 6-2 计算长方体的表面积和体积

    请完成相关代码,实现长方体的表面积和体积的计算 函数接口定义: 请详细参见主程序的调用方式. 裁判测试程序样例: import java.util.Scanner; /* 你的代码将被嵌入到这里 */ ...

最新文章

  1. 在java的程序里date类型比较大小
  2. qq邮箱mx服务器,电子邮箱如何设置域名MX记录
  3. 程序设计语言常见面试题
  4. python多线程加速for循环_多线程-如何在Python的循环中对操作进行多线程
  5. Mysql的分库分表(基于shardingsphere)
  6. html列表用标记,html标记列表应用
  7. hiberanate 主键查询慢_mysql查询优化,1万条数据居然要30秒
  8. 从面试的这些细节就可判断公司的好坏
  9. centos7子系统 win10_Win10下安装CentOS 7双系统详解
  10. 如何在oracle中查询所有用户表的表名、主键名称、索引、外键等 - Oracle   基础和管理_files...
  11. JDK 1.6环境变量的设置
  12. 学习Scala:孤立对象的实现原理
  13. 华为自带时钟天气下载_华为天气时钟农历插件,求华为自带的天气时钟
  14. 产品人的归宿 · 之 · 创业维艰
  15. JAVA拉取Hive的数据导入到MySQL中
  16. 【使用TIFF库对tif图片的读写】
  17. 银耳椰椰——Alpha冲刺Day04
  18. 外部多端口映射Https443端口配置
  19. Kali Linux学习笔记—Web渗透(1)
  20. OpenCV视频篇——从.JPG到.AVI:视频编码最强入门科普

热门文章

  1. Java的基操,基操(二)
  2. 基于第一行代码CoolWeather的小白天气开发
  3. Python批量采集亚马逊商品数据 (含完整源代码)
  4. 学习英文-学以致用【场景:公寓】
  5. 小程序管理需注意这4个方面
  6. 计算机专业平面设计毕业论文选题,关于计算机平面设计的论文题目 计算机平面设计论文题目怎样取...
  7. java比较两个word差异_[转载]java在线比较两个word文件
  8. 一, Habse 概述,安装和快速上手
  9. 我的世界1.13 mod制作——环境搭建(一)
  10. 学校计算机教研组会议记录,学校教研工作专题会议记录