Problem 8 - Recursive Divisible by 3 and 5 Complete the divBy3And5 function which accepts a list of integers. The function should recursively determine how many numbers in the list are divisible by 3 and how many are divisible by 5 and return these counts as a two-element tuple. Your solution MUST BE RECURSIVE and you MAY NOT USE LOOPS. You MAY NOT DEFINE A RECURSIVE HELPER FUNCTION.

Sagot :

The recursive function divBy3And5 is defined in Python and is found in the attached image.

In the base case, the function divBy3And5 tests if the input list is empty. If so, the tuple returned is [tex](0, 0)[/tex]. This means no numbers are divisible by three and no numbers are divisible by five.

The recursive step gets the first element of the list and

  • If divisible by 3, it sets count_of_3 to 1, else it leaves it as 0
  • If divisible by 5, it sets count_of_5 to 1, else it leaves it as 0

It then makes a recursive call on the remaining elements, and stores it in a variable as follows

   divBy3And5_for_remaining_elem = divBy3And5(remaining_elements)

Then, it returns the tuple

       (divBy3And5_for_remaining_elem[0] + count_of_3,

                divBy3And5_for_remaining_elem[1] + count_of_5)

Learn more about recursion in Python: https://brainly.com/question/19295093

View image Batolisis