Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

6.4 Boolean functions Functions can return booleans, which is often convenient for hiding complicated tests inside functions. For example: def is_divisible(x, y): if x %

6.4

Boolean functions Functions can return booleans, which is often convenient for hiding complicated tests inside functions. For example: def is_divisible(x, y): if x % y == 0: return True else: return False

It is common to give boolean functions names that sound like yes/no questions; is_divisible returns either True or False to indicate whether x is divisible by y.

Here is an example: >>> is_divisible(6, 4) False >>> is_divisible(6, 3) True

The result of the == operator is a boolean, so we can write the function more concisely by returning it directly: def is_divisible(x, y): return x % y == 0

Boolean functions are often used in conditional statements: if is_divisible(x, y): print('x is divisible by y') It might be tempting to write something like: if is_divisible(x, y) == True: print('x is divisible by y')

But the extra comparison is unnecessary. As an exercise, write a function is_between(x, y, z) that returns True if x y z or False otherwise.

Question

Do Exercise 6.4 from your textbook using recursion and the is_divisible function from Section 6.4. Your program may assume that both arguments to is_power are positive integers. Note that the only positive integer that is a power of "1" is "1" itself.

After writing your is_power function, include the following test cases in your script to exercise the function and print the results:

print("is_power(10, 2) returns: ", is_power(10, 2)) print("is_power(27, 3) returns: ", is_power(27, 3)) print("is_power(1, 1) returns: ", is_power(1, 1)) print("is_power(10, 1) returns: ", is_power(10, 1)) print("is_power(3, 3) returns: ", is_power(3, 3))

You should submit a script file and a plain text output file (.txt) that contains the test output. Multiple file uploads are permitted. Dont forget to include descriptive comments in your Python code.

Your submission will be assessed using the following Aspects.

  1. Does the submission include the is_divisible function from Section 6.4 of the textbook?
  2. Does the submission implement an is_power function that takes two arguments?
  3. Does the is_power function call is_divisible?
  4. Does the is_power function call itself recursively?
  5. Does the is_power function include code for the base case of the two arguments being equal?
  6. Does the is_power function include code for the base case of the second argument being "1"?
  7. Does the submission include correct output for the five test cases?

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

More Books

Students also viewed these Databases questions