Call by Reference Functions -- Call by Reference Functions are useful because they allow you to pass a reference to a variable instead of the value. This reference means that changing the reference argument also changes the variable in the calling function. -- We often use call by reference for input functions. For example: void input(int &a, int &b) { cout << "Please input two integers: "; cin >> a >> b; return; } This function has a void as a return type. This means the function can have a return statement, but that the return statement must not return anything. -- In this homework you will write a program using an input function, a computation function and an output function. Your main may look like this: int main() { int principle, rate, newPrinciple; input (principle,rate); newPrinciple = computePrinciple(principle,rate); output(newPrinciple,principle,rate); } The input function should ask the user for two integer values. The initial principle, the rate (as a percentage) in rate per year. The output function will simply output the values of the 3 integers shown, hopefully with some descriptive text describing each of the 3 pieces. The compute function should return a new integer principle based on the following. The new principle is equal to the old principle plus the old principle times the rate. You need to convert the rate to an actual decimal (and not a percentage). You can do this by dividing by 100. You should make this computation use floating point computation. You can do that casting to a float explicitly or by making sure that the variables are floats. For example the following code give the value of the rate: rate The following code gives teh value of the rate as a float: (float) rate If the input is 100 and 5, the output should be 105. This is because 100 + 100 * 5 / 100 is 105. If you do this computation without using floats, the result may not be what you have intended. To make this more interesting, you should consider adding a variable for time. Allow the user to input an amount of time and then use a loop to update the principle based on the amount of time that has passed. For example, if your rate is 5% per year and two years have gone by the new principle would be output after two loops, the following shows the computation: 105 = 100 + 100 * 5/100 110.25 = 105 + 105 * 5/100