Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Creative category for Multiplication Table by zgub4
def checkio(first, second):
a = dec_to_bin(first)
b = dec_to_bin(second)
dec_sum = 0
for i in a:
and_sum_string = ""
or_sum_string = ""
xor_sum_string = ""
for j in b:
if i == "1" and j == "1":
and_sum_string += "1"
else:
and_sum_string += "0"
if i == "1" or j == "1":
or_sum_string += "1"
else:
or_sum_string += "0"
if i != j:
xor_sum_string += "1"
else:
xor_sum_string += "0"
f = bin_to_dec(and_sum_string)
s = bin_to_dec(or_sum_string)
t = bin_to_dec(xor_sum_string)
dec_sum += f + s + t
return dec_sum
def dec_to_bin(num):
bin_string = ""
while num > 0:
if num % 2 == 0:
bin_string = "0" + bin_string
else:
bin_string = "1" + bin_string
num = num // 2
return bin_string
def bin_to_dec(bin):
dec = 0
for i in range(len(bin)):
if bin[-i - 1] == "1":
dec += 2**i
return dec
if __name__ == '__main__':
assert checkio(4, 6) == 38
assert checkio(2, 7) == 28
assert checkio(7, 2) == 18
Oct. 21, 2017
Comments: