## Description

**CSIS 209 Programming Assignment 4**

Adapted from: Deitel & Deitel (2017). Visual C# 2015 How to Program (6^{th} ed.). Pearson Education, Inc.

Write a recursive method called Power(base, exponent) that, when called, returns base exponent.

For example, Power ( 3, 4 ) = 3 * 3 * 3 * 3.

Assume that exponent is an integer greater than or equal to 1. The recursion step should use the relationship:

base exponent = base * base exponentÂ – 1

The terminating condition occurs when exponent is equal to 1 because

base^{1} = base

Incorporate this method into an application that enables the user to enter the base and exponent.

**Requirements:**

In the Main() method, declare three arrays of long data types: baseNumbers, exponents, and results. Each array should be created to hold exactly 5 members.

Using a FOR loop, populate the baseNumbers array with random integers between 1 and 50 and populate the exponents array with random integers between 1 and 10. Use a random number generator to create these random numbers.

Using another FOR loop, call the Power method, passing it a member of the baseNumbers array and a member of the exponents array for each iteration of the loop. Store the returned values in the results array.

The Power method should use the algorithm described above and MUST be recursive, taking two longs as arguments and returning a long data type.

Create another method called PrintArrays that takes as arguments the three arrays you created above and returns void. The method should print a header as “Base”, “Exponent”, and “Result” with each word separated with a single tab character. Using a FOR loop, iterate over each array using the GetUpperBound method to determine the condition for which the loop terminates. For each iteration of the loop, print out the base, exponent, and result from each array under the appropriate column headings. (Hint: You may need to use one or more tabs to separate the data values to make them line up with the headers above.)

The Main() method should call the PrintArrays method, passing in the three arrays as arguments.

## Reviews

There are no reviews yet.