#include <stdio.h>
/*****************************************************************
** Function: Calculate_Simple_Interest
**
** Description: Simple Interest is the amount of interest
** calculated by using the formula:
**
** interest = (P * R * T)
**
** where P is the principle, r is the rate, and t
** is the time of the investment
**
** This function will return the simple interest
** calculated based upon it being passed the principle,
** rate, and time.
**
** Parameters: Principle - The original principal to start with
** Rate - The rate of interest. If you wanted
** 9.5 percent it would be passed as 0.095
** Time - The time in years
**
** Returns: Interest - The amount of simple interest earned
**
********************************************************************/
float Calculate_Simple_Interest
( float principle
, float rate
, float time ) {
// Step 1: Define local variable of type float to hold interest
float interest;
// Step 2: Calculate simple interest
interest
= principle
* rate
* time ;
// Step 3: Return the calculated interest
return interest;
} /* end Calculate_Simple_Interest */
float Calculate_Compound_Interest
( float principle
, float rate
, float time ) {
// Step 1: Define local variable of type float to hold compound interest
float compound_interest;
// Step 2: Calculate compound interest
compound_interest
= principle
* ( pow ( ( 1 + rate
) , time ) - 1 ) ;
// Step 3: Return the calculated compound interest
return compound_interest;
}
int main ( void )
{
float interest; /* The interest earned over a period of time */
float principle; /* The amount being invested */
float rate; /* The interest rate earned */
float time ; /* The years of the investment */
/* Initialize the interest value */
interest = 0 ;
/* Enter values needed to determine interest */
printf ( "\n Enter your principle value: " ) ; scanf ( "%f" , & principle
) ;
printf ( "\n Enter the rate: For example 9.5 percent would be .095: " ) ;
printf ( "\n Enter the period of time of your investment: :" ) ;
/* Call simple interest function to calculate the simple interest */
interest
= Calculate_Simple_Interest
( principle
, rate
, time ) ;
/* Print the simple interest earned to the screen */
printf ( "\n \n The total simple interest earned is: $%8.2f\n " , interest
) ;
/* Challenge TO DO: Step 1) Call Calculate_Compound_Interest function */
/* to calculate the compound interest. */
interest
= Calculate_Compound_Interest
( principle
, rate
, time ) ;
/* Challenge TO DO: Step 2) Print the compound interest to the screen */
printf ( "\n \n The total compound interest earned is: $%8.2f\n " , interest
) ;
return ( 0 ) ; /* indicate successful completion */
} /* end main */
I2luY2x1ZGUgPHN0ZGlvLmg+CgovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKiogRnVuY3Rpb246ICBDYWxjdWxhdGVfU2ltcGxlX0ludGVyZXN0CioqCioqIERlc2NyaXB0aW9uOiAgU2ltcGxlIEludGVyZXN0IGlzIHRoZSBhbW91bnQgb2YgaW50ZXJlc3QKKiogICAgICAgICAgICAgICBjYWxjdWxhdGVkIGJ5IHVzaW5nIHRoZSBmb3JtdWxhOgoqKgoqKiAgICAgICAgICAgICAgIGludGVyZXN0ID0gKFAgKiBSICogVCkKKioKKiogICAgICAgICAgICAgICB3aGVyZSBQIGlzIHRoZSBwcmluY2lwbGUsIHIgaXMgdGhlIHJhdGUsIGFuZCB0CioqICAgICAgICAgICAgICAgaXMgdGhlIHRpbWUgb2YgdGhlIGludmVzdG1lbnQKKioKKiogICAgICAgICAgICAgICBUaGlzIGZ1bmN0aW9uIHdpbGwgcmV0dXJuIHRoZSBzaW1wbGUgaW50ZXJlc3QKKiogICAgICAgICAgICAgICBjYWxjdWxhdGVkIGJhc2VkIHVwb24gaXQgYmVpbmcgcGFzc2VkIHRoZSBwcmluY2lwbGUsCioqICAgICAgICAgICAgICAgcmF0ZSwgYW5kIHRpbWUuCioqCioqIFBhcmFtZXRlcnM6ICAgUHJpbmNpcGxlIC0gVGhlIG9yaWdpbmFsIHByaW5jaXBhbCB0byBzdGFydCB3aXRoCioqICAgICAgICAgICAgICAgUmF0ZSAgICAgIC0gVGhlIHJhdGUgb2YgaW50ZXJlc3QuICBJZiB5b3Ugd2FudGVkCioqICAgICAgICAgICAgICAgICAgICAgICAgICAgOS41IHBlcmNlbnQgaXQgd291bGQgYmUgcGFzc2VkIGFzIDAuMDk1CioqICAgICAgICAgICAgICAgVGltZSAgICAgIC0gVGhlIHRpbWUgaW4geWVhcnMKKioKKiogUmV0dXJuczogICAgICBJbnRlcmVzdCAgLSBUaGUgYW1vdW50IG9mIHNpbXBsZSBpbnRlcmVzdCBlYXJuZWQKKioKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCgpmbG9hdCBDYWxjdWxhdGVfU2ltcGxlX0ludGVyZXN0IChmbG9hdCBwcmluY2lwbGUsIGZsb2F0IHJhdGUsIGZsb2F0IHRpbWUpIAp7IAoKICAgIC8vIFN0ZXAgMTogRGVmaW5lIGxvY2FsIHZhcmlhYmxlIG9mIHR5cGUgZmxvYXQgdG8gaG9sZCBpbnRlcmVzdCAgCiAgICBmbG9hdCBpbnRlcmVzdDsKCiAgICAvLyBTdGVwIDI6IENhbGN1bGF0ZSBzaW1wbGUgaW50ZXJlc3QKICAgIGludGVyZXN0ID0gcHJpbmNpcGxlICogcmF0ZSAqIHRpbWU7CgogICAgLy8gU3RlcCAzOiBSZXR1cm4gdGhlIGNhbGN1bGF0ZWQgaW50ZXJlc3QKICAgIHJldHVybiBpbnRlcmVzdDsKICAgICAgICAgCgp9IC8qIGVuZCBDYWxjdWxhdGVfU2ltcGxlX0ludGVyZXN0ICovIAoKZmxvYXQgQ2FsY3VsYXRlX0NvbXBvdW5kX0ludGVyZXN0KGZsb2F0IHByaW5jaXBsZSwgZmxvYXQgcmF0ZSwgZmxvYXQgdGltZSkKewoJCgkvLyBTdGVwIDE6IERlZmluZSBsb2NhbCB2YXJpYWJsZSBvZiB0eXBlIGZsb2F0IHRvIGhvbGQgY29tcG91bmQgaW50ZXJlc3QKICAgIGZsb2F0IGNvbXBvdW5kX2ludGVyZXN0OwogICAgCiAgICAvLyBTdGVwIDI6IENhbGN1bGF0ZSBjb21wb3VuZCBpbnRlcmVzdAogICAgY29tcG91bmRfaW50ZXJlc3QgPSBwcmluY2lwbGUgKiAocG93KCgxICsgcmF0ZSksIHRpbWUpIC0gMSk7CiAgICAKICAgIC8vIFN0ZXAgMzogUmV0dXJuIHRoZSBjYWxjdWxhdGVkIGNvbXBvdW5kIGludGVyZXN0CiAgICByZXR1cm4gY29tcG91bmRfaW50ZXJlc3Q7Cn0KCmludCBtYWluICh2b2lkKSAKeyAKICAgIGZsb2F0IGludGVyZXN0OyAgLyogVGhlIGludGVyZXN0IGVhcm5lZCBvdmVyIGEgcGVyaW9kIG9mIHRpbWUgKi8KICAgIGZsb2F0IHByaW5jaXBsZTsgLyogVGhlIGFtb3VudCBiZWluZyBpbnZlc3RlZCAqLyAKICAgIGZsb2F0IHJhdGU7ICAgICAgLyogVGhlIGludGVyZXN0IHJhdGUgZWFybmVkICovIAogICAgZmxvYXQgdGltZTsgICAgICAvKiBUaGUgeWVhcnMgb2YgdGhlIGludmVzdG1lbnQgKi8gICAgICAgCgogICAgLyogSW5pdGlhbGl6ZSB0aGUgaW50ZXJlc3QgdmFsdWUgKi8gCiAgICBpbnRlcmVzdCA9IDA7CgogICAgLyogRW50ZXIgdmFsdWVzIG5lZWRlZCB0byBkZXRlcm1pbmUgaW50ZXJlc3QgKi8gCiAgICBwcmludGYgKCJcbkVudGVyIHlvdXIgcHJpbmNpcGxlIHZhbHVlOiAiKTsgCiAgICBzY2FuZiAoIiVmIiwgJnByaW5jaXBsZSk7ICAKCiAgICBwcmludGYgKCJcbkVudGVyIHRoZSByYXRlOiBGb3IgZXhhbXBsZSA5LjUgcGVyY2VudCB3b3VsZCBiZSAuMDk1OiAiKTsgCiAgICBzY2FuZiAoIiVmIiwgJnJhdGUpOyAgCgogICAgcHJpbnRmICgiXG5FbnRlciB0aGUgcGVyaW9kIG9mIHRpbWUgb2YgeW91ciBpbnZlc3RtZW50OiA6Iik7IAogICAgc2NhbmYgKCIlZiIsICZ0aW1lKTsgCiAgICAgICAgIAogICAgLyogQ2FsbCBzaW1wbGUgaW50ZXJlc3QgZnVuY3Rpb24gdG8gY2FsY3VsYXRlIHRoZSBzaW1wbGUgaW50ZXJlc3QgKi8KICAgIGludGVyZXN0ID0gQ2FsY3VsYXRlX1NpbXBsZV9JbnRlcmVzdCAocHJpbmNpcGxlLCByYXRlLCB0aW1lKTsgCgogICAgLyogUHJpbnQgdGhlIHNpbXBsZSBpbnRlcmVzdCBlYXJuZWQgdG8gdGhlIHNjcmVlbiAqLyAKICAgIHByaW50ZiAoIlxuXG5UaGUgdG90YWwgc2ltcGxlIGludGVyZXN0IGVhcm5lZCBpczogJCU4LjJmXG4iLCBpbnRlcmVzdCk7IAogICAgICAgICAKICAgIC8qIENoYWxsZW5nZSBUTyBETzogU3RlcCAxKSAgQ2FsbCBDYWxjdWxhdGVfQ29tcG91bmRfSW50ZXJlc3QgZnVuY3Rpb24gKi8KICAgIC8qICAgICAgICAgICAgICAgICAgICAgICAgICAgdG8gY2FsY3VsYXRlIHRoZSBjb21wb3VuZCBpbnRlcmVzdC4gICAgICAgKi8KICAgIAogICAgaW50ZXJlc3QgPSBDYWxjdWxhdGVfQ29tcG91bmRfSW50ZXJlc3QgKHByaW5jaXBsZSwgcmF0ZSwgdGltZSk7IAogCiAgICAvKiBDaGFsbGVuZ2UgVE8gRE86IFN0ZXAgMikgIFByaW50IHRoZSBjb21wb3VuZCBpbnRlcmVzdCB0byB0aGUgc2NyZWVuICovIAogICAgCiAgICBwcmludGYgKCJcblxuVGhlIHRvdGFsIGNvbXBvdW5kIGludGVyZXN0IGVhcm5lZCBpczogJCU4LjJmXG4iLCBpbnRlcmVzdCk7IAoKICAgIHJldHVybiAoMCk7IC8qIGluZGljYXRlIHN1Y2Nlc3NmdWwgY29tcGxldGlvbiAqLwoKfSAvKiBlbmQgbWFpbiAqLwo=