Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

PYTHON Problem Description: ( The Account class ) Design a class named Account t

ID: 3858115 • Letter: P

Question

PYTHON

Problem Description:

(The Account class) Design a class named Account that contains:

A private int data field named id for the account (default 0).

A private double data field named balance for the account (default 0).

A private double data field named annualInterestRate that stores the current interest rate (default 0). Assume all accounts have the same interest rate.

A private Date data field named dateCreated that stores the date when the account was created.

A no-arg constructor that creates a default account.

A constructor that creates an account with the specified id and initial balance.

The accessor and mutator methods for id, balance, and annualInterestRate.

The accessor method for dateCreated.

A method named getMonthlyInterestRate() that returns the monthly interest rate.

A method named withdraw that withdraws a specified amount from the account.

A method named deposit that deposits a specified amount to the account.

Implement the class. Write a test program that creates an Account object with an account ID of 1122, a balance of $20,000, and an annual interest rate of 4.5%. Use the withdraw method to withdraw $2,500, use the deposit method to deposit $3,000, and print the balance, the monthly interest, and the date when this account was created in PYTHON

Explanation / Answer


class Account:
def __init__(self, dateCreated,bank_id = 0, balance = 0.0, annualInterestRate = 0.0):
self.bank_id = bank_id
self.balance = balance
self.annualInterestRate = annualInterestRate
self.dateCreated = dateCreated
  
def createAccount(self):
Account('00-00-0000', 0, 0.0, 0.0)
print("Default account instance is created")
  
def createAccoutnwithvals(self, spec_id, ini_bal):
Account(self.dateCreated, spec_id, ini_bal, self.annualInterestRate)
print("Account is created with id " + str(spec_id) + " and with a balance of " + str(ini_bal))
  
  
def getid(self):
return self.bank_id
def setid(self,val):
self.bank_id = val
  
def getbalance(self):
return self.balance
def setbalance(self,val):
self.balance = val
  
def getannualInterestRate(self):
return self.annualInterestRate
def setannualInterestRate(self,val):
self.annualInterestRate = val
  
def getdateCreated(self):
return self.dateCreated
  
  
def getMonthlyInterestRate(self):
return (self.annualInterestRate/12)
  
def withdraw(self, val):
print("Balance before withdrawl", self.balance)
self.balance = self.balance - val
print("Balance After withdrawl", self.balance)
  
def deposit(self, val):
print("Balance before Deposit", self.balance)
self.balance = self.balance + val
print("Balance After Deposit", self.balance)
  

if __name__ == '__main__':
x = Account('14-03-2017', 1122, 20000, 4.5)
x.withdraw(2500)
x.deposit(3000)
x.createAccoutnwithvals( 2222, 15000)