Finance Modeling Assignment
PROBLEM I -
Maverick numbers are named after a famous student who studied Financial Modeling at the University of Texas at Arlington in the 21st century. Maverick numbers are defined as follows.
M(0) = 0
M(1) = 1 + M(0)
M(2) = 2 + M(1)
M(3) = 3 + M(2)
...
M(n) = n + M(n - 1)
(a) Write a function that computes the Maverick number for a user-provided n. You must use recursion in this function.
Name this function "Maverick" and use it to compute Maverick numbers for n = 1, 2, 3, 4, 10, 75, and 100.
(b) Now rewrite the function but you must use Do While in the function.
Name this function "Maverick2" and use it to compute Maverick numbers for n = 1, 2, 3, 4, 10, 75, and 100.
PROBLEM II -
Write a macro that uses the Maverick function you have written in Problem I.
Name your macro as MaverickCalc.
This macro should ask the user to input the number n as follows: Please input the number n:
The title of the box that asks for the above input should be: Input for Maverick Number Calculator
No default input value should be provided for n.
The result should be displayed in a message box that states the following. The Maverick number for n is: (Note that the number n above should be displayed as the actual number provided by the user.)
The title of the box that provides the above output should be: Maverick number calculator
The above output should be displayed in an information box (i.e., you need to use VbInformation).
PROBLEM III -
Consider an annuity that pays a fixed amount of C every time period for n periods. If the discount rate is r, the PV of this annuity is:
PV = C/(1 + r) + C/(1 + r)2 + C/(1 + r)3 + ... C/(1 + r)n
(a) Write a function to compute the PV of an annuity. You must use recursion in this function.
Name the function "AnnuityPV" and use it to compute the PV of an annuity that pays $1,000 at the end of each year for the next 7 years. The discount rate is 8% per year.
(b) Now rewrite the function but you must use Do While in the function. Name this function "AnnuityPV2" and use it to compute the PV of an annuity that pays $1,000 at the end of each year for the next 7 years. The discount rate is 8% per year.
PROBLEM IV -
Write a macro that uses the AnnuityPV function you have written in Problem III.
Name your macro as AnnuityPVCalc.
This macro should ask the user for the inputs: C, r, and n.
These inputs should be asked for as follows:
Please input the cash flow:
Please input the interest rate:
Please input the number of periods:
The title of each of the box that asks for the above input should be: Input for Annuity PV Calculator
For each of the above, the following default values should be supplied. (User can overwrite these default values to provide the new values.) Cash flow of 1,000, interest rate of 5% or 0.05, and number of periods as 10.
The result should be displayed in a message box that states the following. The present value of the annuity is:
The title of the box that provides the above output should be: Annuity PV Calculator Output
PROBLEM V -
Fibonacci numbers is a sequence of numbers named after Italian mathematician Leonardo Pisano, better known by his nickname of Fibonacci. In this sequence, every number after the first two is the sum of the two preceding ones. The Fibonacci sequence is defined as follows.
F(0) = 0
F(1) = 1
F(2) = F(1) + F(0) = 1 + 0 = 1
F(3) = F(2) + F(1) = 1 + 1 = 2
F(4) = F(3) + F(2) = 2 + 1 = 3
...
In general,
F(n) = F(n - 1) + F(n - 2)
Write the Fibonacci function described above. You must use Do While in this function, Use this function to compute the Fibonacci numbers for n = 1, 2, 4, 8, 12, 16, 20, and 24.
PROBLEM VI -
Write a macro that uses the Fibonacci function you have written in Problem V.
Name your macro as FibonacciCalc.
This macro should ask the user to input the number n as follows: Please input the number n:
The title of the box that asks for the above input should be: Input for Fibonacci Calculator
No default input value should be provided for n.
The result should be displayed in a message box that states the following. The Fibonacci number for n is: (Note that the number n above should be displayed as the number provided by the user.)
The title of the box that provides the above output should be: Fibonacci number calculator
The above output should be displayed in an information box (i.e., you need to use VbInformation)