Bank transfer, Python Programming

Assignment Help:

Bank transfer

What  if we  have  two  values,  representing bank  accounts, and  need  to transfer an  amount of money  amt between them?  Consider that a bank account is shown as a list of values,  such as ['Alyssa', 8300343.03, 0.05], defining that 'Alyssa' has a bank balance  of $8,300,343.03, and has to give a 5-cent fee for every  bank transaction. We may  give  this function as follows. It transfers the amount from  one balance  to the other,  and  deduct the transaction fee from  each account.

def transfer(a1, a2, amt):

a1[1] = a1[1] - amt - a1[2]

a2[1] = a2[1] + amt - a2[2]

To understand what  it's doing,  you really have to read  the code at a detailed layer.  Furthermore, it's simple to get the variable names  and subscripts wrong.

 

Here's another version that  abstracts away  the common idea of a deposit (which  can be positive or negative) into a function, and uses it twice:

 

def transfer(a1, a2, amt): deposit(a1, -amt) deposit(a2, amt)

def deposit(a, amt):

a[1] = a[1] + amt - a[2]

 

Now,  transfer looks pretty simple, but deposit can  still use some work.  In particular, the need of numeric indices  to get the components out of the bank  account de?nition is a bit cryptic  (and easy to get wrong).10

 

def deposit(a, amt):

(name, balance, fee) = a

a[1] = balance + amt - fee

 

Here,  we've used  a destructuring assignment statement to give names  to the components of the account. Unfortunately, when  we want  to modify  a component of the list showing the account, we have  to index  it explicitly.   Shown  that  we have  to use explicit  indices,  this  mechanism in which  we name  them  might  be better.

 

acctName = 0 acctBalance = 1 acctFee = 2

def deposit(a, amt):

a[acctBalance] = a[acctBalance] + amt - a[acctFee]

 

Strive, in your  programming, to make  your  code as easy, simple, clear and  direct  as possible.  Rarely,  the clear  and  simple approach will be too inef?cient, and  you'll have  to work on  something more  hard. In such type, you should still initiate with  something simple and  clear,  and  in the end, you may use it as documentation

 


Related Discussions:- Bank transfer

Non-local references, Non-local references So far, whenever we needed ...

Non-local references So far, whenever we needed to compute a variable, there  was  a binding for that  variable in the 'local' environment (the environment in which  we were e

Van der waals equation of state, how to make a python programme for van der...

how to make a python programme for van der waals equation of state with surface discontinouty

If statements, how do you make an if and else statment work in pytho?

how do you make an if and else statment work in pytho?

Iteration over lists, What if you had a list of integer values, and you nee...

What if you had a list of integer values, and you need to add  them  up and give the sum?  Here are a number of different types of doing  it. First,  here  is a type in a style

Graphing Data, #que Write a program that will take price data for stocks an...

#que Write a program that will take price data for stocks and print it graphically to the screen. Your program should begin by asking the user for the file name. It should then cre

Bit Stuffing, How to write program on bit stuffing using python?

How to write program on bit stuffing using python?

Driven rlc circuit and damped tlc circuit, Write a program on python to gi...

Write a program on python to give solution for driven and damped rlc circuit

Example of Procedures as First-class objects, Procedures in Firrst-class ob...

Procedures in Firrst-class objects In Python, unlike  many  other  languages, methods are behave in much  the same way as num­ bers:  they  can be stored as values  of variabl

Angle between 2 moving line , how to calculate angle between 2 moving line ...

how to calculate angle between 2 moving line in 2d space

Environments in python, Environments in Python Generally, Python estab...

Environments in Python Generally, Python establishes the following binding environments: 1.  builtin     : the mother of all environments: it contains the de?nitions of

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd