\[ \begin{align}\begin{aligned}\newcommand\blank{~\underline{\hspace{1.2cm}}~}\\% Bold symbols (vectors) \newcommand\bs[1]{\mathbf{#1}}\\% Poor man's siunitx \newcommand\unit[1]{\mathrm{#1}} \newcommand\num[1]{#1} \newcommand\qty[2]{#1~\unit{#2}}\\\newcommand\per{/} \newcommand\squared{{}^2} % % Scale \newcommand\milli{\unit{m}} \newcommand\centi{\unit{c}} \newcommand\kilo{\unit{k}} \newcommand\mega{\unit{M}} % % Angle \newcommand\radian{\unit{rad}} \newcommand\degree{\unit{{}^\circ}} % % Time \newcommand\second{\unit{s}} % % Distance \newcommand\meter{\unit{m}} \newcommand\m{\meter} \newcommand\inch{\unit{in}} \newcommand\feet{\unit{ft}} \newcommand\mile{\unit{mi}} \newcommand\mi{\mile} % % Volume \newcommand\gallon{\unit{gal}} % % Mass \newcommand\gram{\unit{g}} \newcommand\g{\gram} % % Frequency \newcommand\hertz{\unit{Hz}} \newcommand\rpm{\unit{rpm}} % % Voltage \newcommand\volt{\unit{V}} \newcommand\V{\volt} \newcommand\millivolt{\milli\volt} \newcommand\mV{\milli\volt} \newcommand\kilovolt{\kilo\volt} \newcommand\kV{\kilo\volt} % % Current \newcommand\ampere{\unit{A}} \newcommand\A{\ampere} \newcommand\milliampereA{\milli\ampere} \newcommand\mA{\milli\ampere} \newcommand\kiloampereA{\kilo\ampere} \newcommand\kA{\kilo\ampere} % % Resistance \newcommand\ohm{\Omega} \newcommand\milliohm{\milli\ohm} \newcommand\kiloohm{\kilo\ohm} % correct SI spelling \newcommand\kilohm{\kilo\ohm} % "American" spelling used in siunitx \newcommand\megaohm{\mega\ohm} % correct SI spelling \newcommand\megohm{\mega\ohm} % "American" spelling used in siunitx % % Inductance \newcommand\henry{\unit{H}} \newcommand\H{\henry} \newcommand\millihenry{\milli\henry} \newcommand\mH{\milli\henry} % % Temperature \newcommand\celsius{\unit{^{\circ}C}} \newcommand\C{\unit{\celsius}} \newcommand\fahrenheit{\unit{^{\circ}F}} \newcommand\F{\unit{\fahrenheit}} \newcommand\kelvin{\unit{\K}} \newcommand\K{\unit{\kelvin}}\\% Power \newcommand\watt{\unit{W}} \newcommand\W{\watt} \newcommand\milliwatt{\milli\watt} \newcommand\mW{\milli\watt} \newcommand\kilowatt{\kilo\watt} \newcommand\kW{\kilo\watt} % % Torque \newcommand\ozin{\unit{oz}\text{-}\unit{in}} \newcommand\newtonmeter{\unit{N\text{-}m}}\end{aligned}\end{align} \]

Apr 16, 2025 | 404 words | 4 min read

1.2.2. Interest#

Instructions#

When a bank account pays compound interest, interest accrues not only on the principal amount that is deposited into the account, but also on the interest that has accumulated over time. Suppose you want to deposit some money into a savings account, and let the account earn compound interest for a certain number of years. The formula for calculating the balance of the account after a specified number of years is:

(1.2)#\[FV = P(1+r/n)^{nt}.\]

In this formula, \(FV\) is the future value, in other words, the amount of money in the account after the specified number of years, \(P\) is the principal amount that was originally deposited into the account, \(r\) is the annual interest rate, \(n\) is the number of times per year that the interest is compounded, and \(t\) is the specified number of years.

Write a program that performs this calculation for you. The program should ask the user to input the following:

  • the amount of principal originally deposited into the account

  • the annual interest rate paid by the account, in percent

  • the number of years the account will be left to earn interest

  • the number of times per year that the interest is compounded (For example, if interest is compounded monthly, enter \(12\). If interest is compounded quarterly, enter \(4\).)

Once the input data has been entered, the program should calculate and display the amount of money that will be in the account after the specified number of years. The precision of output must be set to \(2\), the output must be formatted with comma separators and with the \($\) sign. For example, if the result of your program is \(357689.237\), then the output should be formatted as \($357,689.24\).

Sample Output#

Use the values in Table 1.3 below to test your program.

Table 1.3 Test Cases#

Case

\(P\)

\(r\)

\(t\)

\(n\)

1

10000

6.3

37

12

2

80000

2.5

3.5

4

3

1234567

2.0

10

2

Ensure your program’s output matches the provided samples exactly. This includes all characters, white space, and punctuation. In the samples, user input is highlighted like this for clarity, but your program should not highlight user input in this way.

Case 1 Sample Output

$ python3 interest_login.py Enter the following parameters. The initial deposit? 10000 The annual interest rate in percent? 6.3 The number of years the account earn interest? 37 The number of times interest is compounded each year: 12 The balance of this account will be $102,256.83 after 37.0 years.

Case 2 Sample Output

$ python3 interest_login.py Enter the following parameters. The initial deposit? 80000 The annual interest rate in percent? 2.5 The number of years the account earn interest? 3.5 The number of times interest is compounded each year: 4 The balance of this account will be $87,291.61 after 3.5 years.

Case 3 Sample Output

$ python3 interest_login.py Enter the following parameters. The initial deposit? 1234567 The annual interest rate in percent? 2.0 The number of years the account earn interest? 10 The number of times interest is compounded each year: 2 The balance of this account will be $1,506,406.36 after 10.0 years.

Deliverables#

Save your finished program as interest_login.py, replacing login with your Purdue login. Then submit it along with all the deliverables listed in Table 1.4 below.

Table 1.4 Deliverables#

Deliverable

Description

interest_login.py

Your finished program.

Screenshot(s)

PNG(s) capturing all 3 test cases.