题目:
设计一个行星类。每个行星都有一个名称、半径、质量和离太阳的距离。要求设计:
(1)分别设计四个属性名称、半径、质量和离太阳的距离的访问器方法和修改器方法。
(2)设计一个方法返回行星的体积。
(3)设计一个方法返回行星表面积。
(4)设计一个方法返回行星密度。
(5)设计一个__str__()方法,返回对行星的描述,输出行星的名称、体积、表面积和行星密度
编写一个测试程序,输入行星的名称、半径、质量和距离,输出相应的信息
输入格式:
在一行中输入名称、半径、质量和离太阳的距离,各项之间以空格隔开
输出格式:
输出行星的名称、体积、表面积和行星密度。(其中,数据均四舍五入保留7位小数。)
输入样例:
地球 50 60 30
输出样例:
地球的体积=523598.7755983,表面积=31415.9265359,密度=0.0001146
代码限制:
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
栈限制
8192 KB
通过代码:(python)
# 编程题,7.1 设计一个行星类
import math
class xingxing:
def __init__(self,name,banjing,zhiliang,juli):
self.name=name
self.banjing=banjing
self.zhiliang=zhiliang
self.juli=juli
def jisuantiji(self):
self.tiji=round(4/3*math.pi*self.banjing**3,7)
def jisuanbiaomianji(self):
self.mianji=round(4*math.pi*self.banjing**2,7)
def jisuanxingxingmidu(self):
self.midu=round(self.zhiliang/self.tiji,7)
def __str__(self):
return f"{self.name}的体积={self.tiji},表面积={self.mianji},密度={self.midu}"
# diqiu=xingxing()
# name=input()
# banjing=float(input())
# zhiliang=float(input())
# juli=float(input())
name,banjing,zhiliang,juli=input().split()
banjing=float(banjing)
zhiliang=float(zhiliang)
juli=float(juli)
diqiu=xingxing(name,banjing,zhiliang,juli)
diqiu.jisuantiji()
diqiu.jisuanbiaomianji()
diqiu.jisuanxingxingmidu()
print(diqiu)