close
Content

整數 n 的「同位元」定義為:其二進位表示法中每位元的和再除以 2 的餘數。例如:21 = 101012 的二進位有三個 1,因此它的同位元為 3 (mod 2),或 1。

在此,你要計算一個整數 1 ≤ I ≤ 2147483647 的同位元。

Input
輸入的每一行有一個整數 I,而 I = 0 表示輸入結束,該行無需處理。
Output
對於輸入中的每個整 I,你要印一行 The parity of B is P (mod 2).,其中 B 是 I 的二進位表示法。
Sample Input #1
1
2
10
21
0
Sample Output #1
The parity of 1 is 1 (mod 2).
The parity of 10 is 1 (mod 2).
The parity of 1010 is 2 (mod 2).
The parity of 10101 is 3 (mod 2).

python

#The parity of 1 is 1 (mod 2).
while True:
    try:
        t=int(input())
        if t==0:break
        t0=bin(t)[2:]
        d=t0.count('1')
        print(f'The parity of {t0} is {d} (mod 2).')
    except:break
arrow
arrow
    創作者介紹
    創作者 趴趴熊日常 的頭像
    趴趴熊日常

    資工趴趴熊的小天地

    趴趴熊日常 發表在 痞客邦 留言(0) 人氣()