Ask Question, Ask an Expert


Ask Computer Engineering Expert

Future Value of Periodic Savings:

Figuring Out How Much a "Holiday Club" Account Will Contain in the Future:

Note: No use of global variables is permitted in this program. In another words, all variables should be declared inside main or another function.

OBJECTIVE: Practice top-down design, the use of the data type double in mathematical functions, and suitable formatting of the output of double values.

THE ASSIGNMENT: prepare a program which computes the future value of a 'Holiday Club' account.

The idea is that every week, on Friday, a person deposits P dollars into a special savings account. The weekly deposit is always the same: P dollars. Before the first deposit is made, there is no money in the account. Whatever money is in the account earns interest at some specific fixed rate, compounded weekly. As the weeks go by, there is more and more money in the account, and so every week the amount of additional interest is larger and larger. Finally the time arrives for purchasing holiday gifts. One Friday, rather than depositing another payment, the owner of the account withdraws all the money and spends it.

Naturally, people want to know the answers to problems similar to this: "If I put $30.00 in the Holiday Club account per week for 50 weeks, and if the annual interest rate is 9.73%, then how much will be in the account when I withdraw all the money?" This program will answer such problems.


The program should start by writing information to describe the purpose of the program, and a general explanation of how to use the program.

The program should then prompt for and input the following three items (in the following order): the amount of the weekly payment, the annual interest rate, and the number of weekly payments. It should print individual prompts for each of the three quantities.

The payment amount should be entered as a fixed-point decimal, denoting dollars and cents, without a dollar sign or commas, by using the decimal point in the standard manner when the amount is not a whole number of dollars. For illustration : the user enters 34.56 to mean 34 dollars and 56 cents, or 100 to mean 100 dollars. The prompt you make for the payment must make such rules clear to the user of the program.

The interest rate should be entered as a fixed-point decimal number of percentage points. For illustration: the user enters 8.125 to mean an annual interest rate of 8.125%. The prompt you create for the interest should make this rule clear to the user of the program.

The number of weekly payments should be entered as a positive integer. For illustration: the user enters 45 to mean forty-five weekly payments. The prompt you create for the number of weekly payments must make this rule clear to the user of the program.

Make sure to prepare the program so that it inputs only:

a) The amount of the payment,
b) The interest rate, and
c) The number of payments,

in that order. If I decide I want to test a program I will want to use redirection from prepared files of input. That won't work out unless you and I have this precise agreement on the form (and order) of the input.

After the user enters the input (payment amount P, interest rate R, and number of weekly payments N), the program must find out the amount of money that will be in the account at the end of N weeks (the future value FV) using this formula:

P((r+1)N - 1)(r+1)
FV =   ------------------------
where, r = R/5200, the decimal equivalent of the weekly interest rate.

Of course, the formula above is in a format 'to be understood by humans,' and doesn't have JAVA syntax. Part of your job as programmer is to create suitable JAVA expressions to perform the calculations.

Here is an outlandish illustration of a way to use the formula which may make it more understandable: Assume P is $100 per week, the annual interest rate R is 520% (ten percent per week) and the number of payments N is 2, then r = 520/5200 = 0.10, and

        100((1.10)2 - 1)(1.10)
FV =   --------------------------------   =  $231.00
Another illustration: if P is $100, R is 9.25% and N is 50, then r = 9.25/5200 = 0.001779, and

       100((1.001779)50   - 1)(1.001779)
FV =   --------------------------------   =  $5233.57
Note that your program can use the pow function to compute the power: (r + 1)N

For ex pow(3,2) is 3 to the 2nd power (= 9) and pow(2,5) is 2 two to the fifth power (= 32).

After computing it, the program must prepare a message to standard output (the screen) saying what the future value is. The message must also tell what the input of the user was. For ex, if the user enters 100 for the amount of the payment, 9.25 as the interest rate, and 50 as the number of weeks, then your program should output something very much like this:

The future value of 50 weekly payments of:

$100.00 at 9.250% is $5233.57.

Your program is required to format the numbers for output as shown above.The money should always appear in fixed-point notation, preceded by a dollar sign, and with exactly two digitsdisplayed after the decimal point. The interest rate must be displayed in fixed-point notation, as a percentage, with exactly three digits displayed after decimal point.

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M91335

Have any Question? 

Related Questions in Computer Engineering

1 what drawbacks to symmetric and asymmetric encryption are

1. What drawbacks to symmetric and asymmetric encryption are resolved by using a hybrid method like Diffie Hellman? 2. What is steganography, and what can it be used for? 3. Which security protocols are predominantly use ...

1 assume that we are going to compute c on both a single

1. Assume that we are going to compute C on both a single core shared memory machine and a 4-core shared-memory machine. Compute the speedup we would expect to obtain on the 4-core machine, ignoring any memory issues. 2. ...

Assignment ticket seller phase iithis assignment contains

Assignment: Ticket Seller Phase II This assignment contains elements that you have learned over the past few weeks, including: An event planning document outlining objects, triggers, and events that will be used to drive ...

1 devise a plan to compute the cost of computer crime2 what

1. Devise a plan to compute the cost of computer crime. 2. What major crimes would you include in the preceding study? 3. From your study, identify the most expensive attacks. 4. Devise techniques to study the problem of ...

Components of a telecommunication system and basic computer

Components of a Telecommunication System and Basic Computer Network Components are major components of a business : What are the main differences of these two systems? Do you need to have both of them to support your com ...

1 why is it good practice to assign start and end dates

1. Why is it good practice to assign start and end dates sparingly in the early stages of project planning? 2. Who is the best judge of effort estimates for project tasks and action steps? Why? 3. Within project manageme ...

1 compare the cake-making task to computing 3 iterations of

1. Compare the cake-making task to computing 3 iterations of a loop on a parallel computer. Identify data-level parallelism and task-level parallelism in the cake-making loop. 2. Many computer applications involve search ...

1 discuss the future of wireless lans2 what is a wireless

1. Discuss the future of wireless LANs. 2. What is a wireless WAN? What kind of technology can be used in it? Is this the wave of the future? 3. With the future in mind, compare and contrast ATMs and ISDN technologies.

1 for each mux show the values of its data output during

1. For each Mux, show the values of its data output during the execution of this instruction and these register values. 2. For the ALU and the two add units, what are their data input values? 3. What are the values of al ...

In a tcp connection the initial sequence number at the

In a TCP connection, the initial sequence number at the client site is 2171. The client opens the connection, sends three segments, the second of which carries 1000 bytes of data, and closes the connection. What is the v ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Section onea in an atwood machine suppose two objects of

SECTION ONE (a) In an Atwood Machine, suppose two objects of unequal mass are hung vertically over a frictionless

Part 1you work in hr for a company that operates a factory

Part 1: You work in HR for a company that operates a factory manufacturing fiberglass. There are several hundred empl

Details on advanced accounting paperthis paper is intended

DETAILS ON ADVANCED ACCOUNTING PAPER This paper is intended for students to apply the theoretical knowledge around ac

Create a provider database and related reports and queries

Create a provider database and related reports and queries to capture contact information for potential PC component pro

Describe what you learned about the impact of economic

Describe what you learned about the impact of economic, social, and demographic trends affecting the US labor environmen