python编程 五年 金额*(完整的存款周期数*五年期年利率*5+剩余天数*0.0036/365) 满1825天为一个存款周期,不足1825天,为0个存款周期 例如,某三年期存单,年利率为2.75%,金额10000元,取款时,实际存款2300天(已满2个完整的存款周期, 剩余2300-1095*2天),则 实际利息=10000*(2*0.0275*3+ (2300-1095*2)*0.0036)= 1660.85元 (5) 按以上要求定义好DEPOSIT类之后,如果运行图2中给定的测试程序并输入数据,可以输出图3所示的结果。 #银行柜员根据银行客户办理存款业务时现场输入相关信息 account,type,amount,rate,date=eval(input('输入账号、类别、金额、利率,存款日期:')) deposit1=DEPOSIT(account,type,amount,rate,date) print(deposit1.get_info()) #一段时间之后,用户提款,银行柜员输入存款实际持续天数 days=int(input('输入实际存款天数:')) print('实际利息%8.2f'%(deposit1.get_Interest(days)))
时间: 2023-09-14 17:08:15 浏览: 83
opencv3.4.1.15_python安装包
以下是一个符合要求的DEPOSIT类实现:
```python
class DEPOSIT:
def __init__(self, account, type, amount, rate, date):
self.account = account # 账号
self.type = type # 存款类型
self.amount = amount # 存款金额
self.rate = rate # 存款利率
self.date = date # 存款日期
def get_info(self):
return f"账号:{self.account},存款类型:{self.type},存款金额:{self.amount}元,存款利率:{self.rate * 100}%,存款日期:{self.date}"
def get_Interest(self, days):
periods = days // 1825 # 存款周期数
if periods == 0:
return 0
remaining_days = days % 1825 # 剩余天数
interest = self.amount * (periods * self.rate * 5 + remaining_days * 0.0036 / 365)
return interest
```
在该类中,`__init__()`方法用于初始化实例属性,`get_info()`方法返回存款相关信息的字符串表示,`get_Interest()`方法计算实际利息。其中,`get_Interest()`方法的计算公式就是题目中给出的公式。需要注意的是,利率需要先转换为小数形式。
在测试程序中,先使用`input()`函数获取用户输入的存款相关信息,创建DEPOSIT类实例对象。然后,再使用`input()`获取用户提款时的实际存款天数,调用`get_Interest()`方法获取实际利息。最后,使用`print()`函数输出结果即可。
完整代码如下:
```python
class DEPOSIT:
def __init__(self, account, type, amount, rate, date):
self.account = account # 账号
self.type = type # 存款类型
self.amount = amount # 存款金额
self.rate = rate # 存款利率
self.date = date # 存款日期
def get_info(self):
return f"账号:{self.account},存款类型:{self.type},存款金额:{self.amount}元,存款利率:{self.rate * 100}%,存款日期:{self.date}"
def get_Interest(self, days):
periods = days // 1825 # 存款周期数
if periods == 0:
return 0
remaining_days = days % 1825 # 剩余天数
interest = self.amount * (periods * self.rate * 5 + remaining_days * 0.0036 / 365)
return interest
# 测试程序
account, type, amount, rate, date = eval(input('输入账号、类别、金额、利率,存款日期:'))
deposit1 = DEPOSIT(account, type, amount, rate, date)
print(deposit1.get_info())
days = int(input('输入实际存款天数:'))
print(f"实际利息:{deposit1.get_Interest(days):.2f}元")
```
运行程序后,按照提示输入相应信息,即可得到与图3所示相同的结果。
阅读全文