Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Exercise 6.4. A number, a, is a power of b if it is divisible by b and a/b is a power of b. Write a

Exercise 6.4. A number, a, is a power of b if it is divisible by b and a/b is a power of b. Write a function called is_power that takes parameters a and b and returns True if a isapowerof b. Note: you will have to think about the base case.

Here is a piece of the book:

def is_divisible(x, y):

if x % y == 0:

return True

else: return False

is_divisible(6, 4)

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.

Does the submission include the is_divisible function from Section 6.4 of the textbook?

Does the submission implement an is_power function that takes two arguments?

Does the is_power function call is_divisible? Does the is_power function call itself recursively?

Does the is_power function include code for the base case of the two arguments being equal?

Does the is_power function include code for the base case of the second argument being "1"?

Does the submission include correct output for the five test cases?

I have already done some of the work if you can add the function is_divisible to the programs or change as one of the questions says . thank you!

def is_power(a, b): if a == b: return True if b==1: return False elif a%b !=0: return False else: return is_power(a/b,b) 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))

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

Essential SQLAlchemy Mapping Python To Databases

Authors: Myers, Jason Myers

2nd Edition

1491916567, 9781491916568

More Books

Students also viewed these Databases questions

Question

Discuss the importance of positioning in IMC planning.

Answered: 1 week ago