115k views
3 votes
Write function d2x() that takes as input a nonnegative integer n (in the standard decimal representation) and an integer x between 2 and 9 and returns a string of digits that represents the base-x representation of n.

User Baskaya
by
6.1k points

1 Answer

0 votes

Answer:

The function in Python is as follows:

def d2x(d, x):

if d > 1 and x>1 and x<=9:

output = ""

while (d > 0):

output+= str(d % x)

d = int(d / x)

output = output[::-1]

return output

else:

return "Number/Base is out of range"

Step-by-step explanation:

This defines the function

def d2x(d, x):

This checks if base and range are within range i.e. d must be positive and x between 2 and 9 (inclusive)

if d >= 1 and x>1 and x<=9:

This initializes the output string

output = ""

This loop is repeated until d is 0

while (d > 0):

This gets the remainder of d/x and saves the result in output

output+= str(d % x)

This gets the quotient of d/x

d = int(d / x) ----- The loop ends here

This reverses the output string

output = output[::-1]

This returns the output string

return output

The else statement if d or x is out of range

else:

return "Number/Base is out of range"

User Velez
by
6.3k points