面試題 05 02 二進位制數轉字串

2022-05-13 08:44:00 字數 521 閱讀 9268

二進位制數轉字串。給定乙個介於0和1之間的實數(如0.72),型別為double,列印它的二進位制表示式。如果該數字不在0和1之間,或者無法精確地用32位以內的二進位制表示,則列印「error」。

示例1:

輸入:0.625

輸出:"0.101"

示例2:

32位包括輸出中的"0."這兩位。

class

solution:

def printbin(self, num: float) ->str:

res,a='

0.',32

while num>0 and

a: num*=2

if num>=1:

res+='1'

num-=1

else

: res+='0'

a-=1

return res if

not num else

'error

'

刷題 力扣 面試題 05 02 二進位制數轉字串

題目鏈結 題目描述 二進位制數轉字串。給定乙個介於0和1之間的實數 如0.72 型別為double,列印它的二進位制表示式。如果該數字無法精確地用32位以內的二進位制表示,則列印 error 示例1 輸入 0.625 輸出 0.101 示例2 輸入 0.1 輸出 error 題目分析 根據題目描述,...

面試題 二進位制

之前論壇看到乙個面試題,很基礎的考察按位符運算,總結如下 按位與 只有對應的兩個二進位均為1時 結果位才為 1,否則為0。舉例 比如9 5,其實就是1001 101 1,因此9 5 1 規律 二進位制中,與 1相 就保持原位,與 0相 就為 0int fun int nvalue return nc...

負二進位制的面試題

今天看到一篇關於面試atc的心得,呵呵,裡面提到了乙個負二進位制的題目 d m 也真夠能折騰的。1.如何用負二進位制表述十進位制等式5 3 8?原題 解 dcba 2 d 2 3 c 2 2 b 2 1 a 2 0 dec d 2 3 c 2 2 b 2 1 d dec 則 101 neg bin ...