print(3 + 4)
print(10 + 10)
print(abs(-100))  # To get absolute value
print((10 + 10) * 8)
print(10 & 10)  # Binary AND of two values
print(21 & 8)
print(2 | 3)  # Binary OR of two values
print(21 / 4)
print(90 > 80)  # Returns true
# print 3 + 4                # Python 2.x feature, brackets not needed!
# print cmp(10, 80)          # Python 2.x feature, returns -1, 0, 1 w.r.to false, equal and true!
# print coerce(10, 20.5)     # Python 2.x feature, returns same type of both if one contains different
print(type(90.0))  # Returns type of value
print(2 << 1)  # Left shift operator
print(2 << 2)
print(3 << 1)
print(4 << 1)
print(4 << 2)
print(5 << 2)
print(5 << 3)
print(5 << 4)
print(type(5))
print(abs(-1))
print(int(3.1))
print(bin(2))  # Returns binary value
print(bin(100))
print(hex(10))  # Returns hexadecimal value
print(oct(3))  # Returns octal value
print(hex(15))
print(hex(101))
print(101 // 16)
print(101 / 16)
print(oct(18))
print(oct(8))
print(oct(9))
a = 10
print(type(a))
print(dir(a))
print(int('123'))
print(ord('1'))  # Returns ASCII value
print(ord('0'))
print(ord('1') - ord('0'))
