https://www.codecademy.com/en/courses/python-intermediate-en-KE1UJ/1/3?curriculum_id=4f89dab3d788890003000096
Any better way to solve it ?
print bin(0b1110 | 0b101)
m = int(raw_input("any no. pls: "))
n = int(raw_input("other no. pls: "))
m = str(bin(m))
n = str(bin(n))
m = m[2:]
n = n[2:]
if len(m) < len(n):
m = ("0" * (len(n) - len(m))) + m[::-1]
elif len(n) < len(m):
n = ("0" * (len(m) - len(n))) + n[::-1]
k = ""
j = 0
for i in m:
if (i == "0" and n[j] == "1") or (i == "1" and n[j] == "0") or (i == "1" and n[j] == "1"):
k += "1"
else:
k += "0"
j += 1
print "".join(k)
tkr123
December 9, 2016, 1:55am
2
print bin(0b1111)
@gigawhiz67659 , above is enough to solve it!
quit impressive to do it without the |
bitwise operator. Great challenge by the exercise, don’t you think?
personally i would change this:
if (i == "0" and n[j] == "1") or (i == "1" and n[j] == "0") or (i == "1" and n[j] == "1"):
there are 4 possible cases, you written 3 of them here, you could reverse it? check if i
and n[j]
both equal zero, if so, add 0 to k, else
add one
you could also use zip:
for i, j in zip(m,n):
print i, j
this allows you to loop over two list/strings at the same time.
you can take the slice at string conversion:
m = str(bin(m))[2:]
the purpose of the slice is to cut off 0b
but i would add it at the end again:
print "0b" + "".join(k)
if you then enter 14 and 5, the exercise will approve.
@karray , this was an additional challenge from the exercise:
Try to do it on your own without using the | operator if you can help it.
of course you can do it with |
, but writing the program without is a great challenge for your coding skill
1 Like
no, you are right, you did not. But this code gigawhiz wrote, will work for any number, it is cool and it emulates the |
bit-wise operator.
your solution is just enter a fixed number to pass the exercise, not helping gigawhiz
tkr123
December 9, 2016, 11:01am
6
gigawhiz is asking if there’s a shorter alternate code…
yes, a shorter way to emulate the |
bit-wise operator, not on how to pass the exercise.
1 Like
system
Closed
December 16, 2016, 11:03am
8
This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.