fun printBits(n: Int) {
println(String.format("%8s", Integer.toBinaryString(n)).replace(' ', '0'))
}
fun main() {
val cases = listOf(Pair(5, 5), Pair(7, 0), Pair(0, 6), Pair(0, 0))
for ((x, y) in cases) {
printBits(x)
println("^")
printBits(y)
println("=")
printBits(x xor y)
println()
}
}
/*
run:
00000101
^
00000101
=
00000000
00000111
^
00000000
=
00000111
00000000
^
00000110
=
00000110
00000000
^
00000000
=
00000000
*/