设计一个矩形类(类名:Rect),要求 数据成员长(length)和宽(width),并设置默认值为1; 通过构造方法对数据成员进行初始化,并确保长和宽都在[1,50]范围内(超过50设置为50,不足1设置为1) 设计perimeter(),area()方法分别计算矩形周长及面积; 设计display()方法显示矩形信息。 编写代码验证该类的功能。注意输出保留1位小数 请输入新建矩形的长:78 请输入新建矩形的宽:23 矩形的长为:50.0 矩形的宽为:23.0 矩形的周长为:146.0 矩形的面积为:1150.0
时间: 2024-02-22 16:56:57 浏览: 192
类名::调用静态方法-高级类特性
好的,以下是实现该功能的代码:
```python
class Rect:
def __init__(self, length=1, width=1):
if length < 1:
length = 1
elif length > 50:
length = 50
if width < 1:
width = 1
elif width > 50:
width = 50
self.length = length
self.width = width
def perimeter(self):
return (self.length + self.width) * 2
def area(self):
return self.length * self.width
def display(self):
print("矩形的长为:{:.1f}".format(self.length))
print("矩形的宽为:{:.1f}".format(self.width))
print("矩形的周长为:{:.1f}".format(self.perimeter()))
print("矩形的面积为:{:.1f}".format(self.area()))
length = float(input("请输入新建矩形的长:"))
width = float(input("请输入新建矩形的宽:"))
rect = Rect(length, width)
rect.display()
```
运行结果如下:
```
请输入新建矩形的长:78
请输入新建矩形的宽:23
矩形的长为:50.0
矩形的宽为:23.0
矩形的周长为:146.0
矩形的面积为:1150.0
```
注意:在输入矩形的长和宽时,如果不在1到50之间,会自动根据题目要求进行调整。如果输入非法字符,程序可能会报错。
阅读全文