位運(yùn)算之二進(jìn)制表示浮點(diǎn)數(shù)

題目:

輸入任意一個(gè)0-1之間的浮點(diǎn)數(shù),轉(zhuǎn)為2進(jìn)制數(shù)

如果小數(shù)點(diǎn)后32位無(wú)法精確表示 則輸出 ERROR

小數(shù)點(diǎn)后用二進(jìn)制表示為,右移2? 即0.5 二進(jìn)制表示 0.1,0.25表示0.01

0.625 即為 0.101

兩個(gè)樣例:

輸入:

0.625? ? ?或? ? ?0.3

輸出:

0.101? ? ? 或? ? ?ERROR

tip:

已知十進(jìn)制整數(shù) 轉(zhuǎn)為二進(jìn)制數(shù),除二取余??梢运伎际M(jìn)制小數(shù)可以乘2取整,

即每次乘2,如果大于1則在當(dāng)前小數(shù)點(diǎn)后位進(jìn)1,直到取整后為0.

演示過(guò)程:?

0.625*2

1.25 -- 0.1

?0.25*2

0.5? -- 0.10

?0.5*2

1.0 -- 0.101

結(jié)果 0.101

(Java代碼如下)

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

double n = sc.nextDouble();

//字符串拼接

StringBuilder sb = new StringBuilder("0.");

while(n > 0) {

n *= 2;

if(n >= 1) {

sb.append("1");

n--;

}else {

sb.append("0");

}

if(sb.length() > 34) {//32+2

System.out.println("ERROR");

return;

}

}

System.out.println(sb.toString());

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 最先接觸編程的知識(shí)是在大學(xué)里面,大學(xué)里面學(xué)了一些基礎(chǔ)的知識(shí),c語(yǔ)言,java語(yǔ)言,單片機(jī)的匯編語(yǔ)言等;大學(xué)畢...
    oceanfive閱讀 3,377評(píng)論 0 7
  • 在C語(yǔ)言中,五種基本數(shù)據(jù)類型存儲(chǔ)空間長(zhǎng)度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來(lái)閱讀 4,009評(píng)論 0 2
  • 聽(tīng)著歌,回想剛才和閨蜜的聊天。好像其實(shí)是對(duì)方不夠在意你。雖然戀愛(ài)的感受只有兩個(gè)當(dāng)事人能懂。但是也許只是我在自欺欺人...
    賽斯芙妮閱讀 289評(píng)論 0 0
  • 生活中的事情,總會(huì)有那么一個(gè)重點(diǎn)擺在那里。當(dāng)你明確的知道目標(biāo)以后,可能還會(huì)被身邊的美好事物誘惑或者吸引,這是種考...
    下劃線閱讀 298評(píng)論 0 1
  • 今天看了七月與安生,看的時(shí)候滿腦子都是我的朋友F,我認(rèn)識(shí)的她的時(shí)候也是13歲,像是宿命,逃不開(kāi)的命運(yùn)! 認(rèn)識(shí)她那...
    大白不黑閱讀 361評(píng)論 0 0

友情鏈接更多精彩內(nèi)容