0

I have to create a program to convert decimal numbers to binary for my class but im lost. These are the directions. 3 Files must be used

user_input.py

Obtain an integer from the user between 0-255.
No conversion or print statements allowed in the user_input.py
Obtaining the integer must be done in a function
No import statements allowed

conversion.py

Convert the number provided to a binary number (e.g., 254 provided and converted to 11111110)
No print statements, input statements, or built in functions to convert a number to binary. Conversion must be done manually.
Small hint, concatenating the 1s and 0s is going to be tough b/c python will want to add the numbers (e.g., 1+1 = 2 vs 1+1 = 11). So, how are you going to handle this issue?
The conversion must be done in a function
No import statements allowed

main.py

Print the eight bit binary representation (00000000 - 11111111) of the number provided and converted. To do so, you will have to access the necessary functions in conversion.py and user_input.py
Note - the program is only allowed to access functions. No direct access to variables allowed.
No input or conversions allowed in main.py Note - the binary print must only be the eight binary numbers. No commas, brackets etc. - ['1', '0', '0', ...] or [1,1,0,0,1..] are not allowed.

to make the function to get the inputted number I use

  def number ():
    num =int(input('Pick a number from 0 - 255'))
    return num
  number()

After that when I do not know how I would access it without importing it. This is the code I'm using to convert

def conversion(num):
cnv_bin = ''
num = ''
while num // 2 > 0:
    if num % 2 == 0:
        cnv_bin += '0'
    else:
        cnv_bin += '1'
    num = num // 2
return cnv_bin

In the last file I tried

import conversion
import user_input
print(conversion.conversion(user_input.number()))

and that gave me this error

Traceback (most recent call last):
File "C:/Users/adkir/PycharmProjects/lab_23/main.py", line 4, in <module>
print(conversion.conversion(user_input.number()))
File "C:\Users\adkir\PycharmProjects\lab_23\conversion.py", line 5, in 
conversion
while num // 2 > 0:
TypeError: unsupported operand type(s) for //: 'str' and 'int'

So basically im lost. Can anyone point me in the right direction so I can figure this out?

1 Answer 1

1

Your conversion function takes num as a parameter and yet it overwrites num's value by assigning an empty string to it.

Remove the line:

num = ''

and it should work.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.