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:
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\).)
Note
The user should enter the interest rate as a percentage. For example, \(2\%\) would be entered as \(2\), not as \(.02\). The program will then have to divide the input by \(100\) to move the decimal point to the correct position.
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.
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.
Deliverable |
Description |
---|---|
|
Your finished program. |
Screenshot(s) |
PNG(s) capturing all 3 test cases. |