Solved

Compound interest .... !!!

Posted on 2003-12-11
18
726 Views
Last Modified: 2007-12-19
hi everyone, i need help on that question ....

what is the compound interest formula if i'm using 'i' for the rate and 'n' for the numbers of years ???

i already wrote two functions but they're not working !!!!

//============================================
// First one
//========

    public float Total(float i,int n)            //Savings -> return balance after n years and i interest
    {
        for(int count=0; count<n; count++)
        {
            Balance *= Math.pow(( 1 + i ), n);
        }
        return Balance;
    }
//================

// Second one
//========

    public float Total(float i,int n)            //Savings -> return balance after n years and i interest
    {
        return Balance *= Math.pow(( 1 + i ), n);
    }
//============================
i don't know what one is the correct one .... i'm not a business major :P


and if by any chance ..... could anyone tell me how to do it in the recursive way !!!

thankz
0
Comment
Question by:hackermen5
  • 5
  • 4
  • 3
  • +3
18 Comments
 
LVL 86

Expert Comment

by:CEHJ
ID: 9919687
Out of interest (no pun intended) why would you want to do it recursively?
0
 
LVL 35

Expert Comment

by:TimYates
ID: 9919717
I reckon it says to as part b of the homework... ;-)
0
 
LVL 35

Assisted Solution

by:TimYates
TimYates earned 100 total points
ID: 9919805
Compound Interest is calculated like:

public calculateCompoundInterest( double rate, double period )
{
    balance = balance * Math.pow( 1+rate, period ) - balance ;
}

Make sure your "balance" variable is a double...(not an int)

Tim
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 9919821
Tell your teacher that recursion should be avoided where it's not necessary (as it is not here;-))

The formula for simple interest is:   F  =  P ( 1 + R / N ) ^ ( N * T )

             Where :  F   =  final amount
                           P   =  initial amount
                           R   = interest rate
                           N   = number of compounding periods
                           T   = Time ( in years )

0
 
LVL 30

Expert Comment

by:mayankeagle
ID: 9919966
More importantly, the recursive function that he's written will go on looping forever as there's no stopping condition.

BTW, hackermen5, this is not a place to tell you the correct formula :-) we can help you with the coding/ implementation if you face problems.

I guess he needs recursion in computing the value of (1 + R/N) ^ T.... (for computing the exponential value). Strange way.

Mayank.
0
 
LVL 35

Expert Comment

by:TimYates
ID: 9920030
>  More importantly, the recursive function that he's written will go on looping forever as there's no stopping condition.

Which one do you think is recursive?
0
 
LVL 35

Expert Comment

by:TimYates
ID: 9920031
;-)
0
 
LVL 30

Assisted Solution

by:mayankeagle
mayankeagle earned 50 total points
ID: 9920120
public float Total(float i,int n)            //Savings -> return balance after n years and i interest
    {
        return Balance *= Math.pow(( 1 + i ), n);
    }
//============================

Sorry, I thought I saw a call to Total () instead of pow :-) didn't read it completely.... thought that the first was non-recursive and the second recursive.

Anyways, he's still not told us why he needs the recursion.
0
 
LVL 2

Expert Comment

by:Dannin
ID: 9920240
     public float Total(float i,int n)  
      {
          float balance=0;
          for(int count=0; count<n; count++)
          {

                  balance*= Math.pow(( 1 + i ), n);
          }
          return balance;
      }
0
Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 
LVL 30

Expert Comment

by:mayankeagle
ID: 9920283
Dannin, your balance will always remain zero.
0
 
LVL 30

Expert Comment

by:mayankeagle
ID: 9920299
Also, by the way, why is balance supposed to multiplied by (( 1 + i ) ^ n) 'n' number of times?
0
 
LVL 2

Accepted Solution

by:
Dannin earned 100 total points
ID: 9920301
Opps I'm too used to addition lol

    public float Total(float i,int n)  
     {
         float balance=1;
         for(int count=0; count<n; count++)
         {

               balance*= Math.pow(( 1 + i ), n);
         }
         return balance;
     }
Here u go
0
 
LVL 2

Expert Comment

by:Dannin
ID: 9920314
Well isn't it the way the person who asked the question wanted it?
0
 
LVL 92

Expert Comment

by:objects
ID: 9923823
> Tell your teacher that recursion should be avoided

except if you're learing about recursion :)
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 9923910
Then an example that needs recursion should be given
0
 
LVL 92

Expert Comment

by:objects
ID: 9924061
An (familiar) problem that can be solved with recursion is just as suitable.
0
 
LVL 1

Author Comment

by:hackermen5
ID: 9924836
i'm sorry uys ... but my teaher is not that nice to give us an example of recursion .... i didn't even understand the recursion concept yet .....

anyway ..... thanks for ur help guys .....
0
 
LVL 30

Expert Comment

by:mayankeagle
ID: 9925774
By the way, why did you accept my comment as an assist? (I was still waiting to assist after getting some comments from you :-) )
0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Suggested Solutions

Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
The viewer will learn how to implement Singleton Design Pattern in Java.

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now