编写程序,实现Person类及方法,并定义相应类对象并进行测试。 类Person,包含实例属性:name, age, height(身高),weight(体重) 设计构造函数初始化实例属性 设计实例方法setData进行实例属性的键盘输入和修改 设计实例方法printData进行实例属性的输出 设计实例方法按Person的BMI公式为:体重/身高^2。体总单位是kg,身高为m 要求创建Person对象,调用实例方法修改实例属性,并输出修改后的值,最后计算Person的BMI 注意: • 输出的Person身高、体重、BMI保留两位小数
时间: 2024-03-17 07:46:05 浏览: 125
以下是Python的实现代码:
```python
class Person:
def __init__(self, name, age, height, weight):
self.name = name
self.age = age
self.height = height
self.weight = weight
def setData(self):
self.name = input("请输入姓名:")
self.age = int(input("请输入年龄:"))
self.height = float(input("请输入身高(单位:米):"))
self.weight = float(input("请输入体重(单位:千克):"))
def printData(self):
print("姓名:{}".format(self.name))
print("年龄:{}".format(self.age))
print("身高:{:.2f}米".format(self.height))
print("体重:{:.2f}千克".format(self.weight))
def getBMI(self):
bmi = self.weight / (self.height ** 2)
return round(bmi, 2)
# 创建Person对象
p = Person("张三", 20, 1.75, 68.5)
# 修改实例属性并输出
p.setData()
p.printData()
# 计算Person的BMI
bmi = p.getBMI()
print("BMI:{:.2f}".format(bmi))
```
这段代码定义了一个Person类,包含实例属性name、age、height和weight,以及构造函数、setData方法和printData方法用于实例属性的初始化、键盘输入和输出。另外,还定义了getBMI方法用于计算Person的BMI。在程序中,创建了一个Person对象p,先通过setData方法修改实例属性,再通过printData方法输出实例属性和getBMI方法计算Person的BMI。最后,将BMI输出并保留两位小数。
阅读全文