28. Parity (CPE10461, UVA10931) - CPE一顆星解答與說明

   👉  CPE 一顆星選集列表(49題) 題目說明與解答

CPE一顆星49題解答 - pdf 電子檔,售價 199 元,

購買電子檔可將筆記與完整解答帶著走,

坐車、上課時皆可隨時複習,

不受網路或廣告影響,

若有需要請來信購買 greens2314@gmail.com


題目


  • 同位元定義:
    • 2 進位表示法中,計算每個位元的和,除以 2 取餘數
    • 例子:


  • 印出數字的 2 進制,並計算 1 出現幾次


輸入說明


  • 每一行有一個數字
  • 當數字等於 0 時,結束處理



輸出說明

  • 每行輸入,對應一行輸出
  • 輸出格式:
    • The parity of 2進制數字 is 數字1出現的次數(mod 2).




解題技巧

  • 進制轉換
  • 10 進制轉 2 進制
  • 短除法
  • 取商數,使用 /
  • 取餘數,使用 %


解題過程

取得輸入

  • 使用 while 偵測是否有數字輸入,使用 hasNextInt()
  • 取得數字使用 nextInt() 



判斷讀取到的數字是否為 0 

  • 若為 0 則呼叫 break 結束 while迴圈

使用短除法,將10 進制數字轉 2 進制

  • 紀錄 1 在二進制中出現的次數,宣告 count 變數
    • 紀錄轉二進制的結果,宣告 binary 變數
    • 使用 while 迴圈
      • 判斷被除數是否大於 0
        • 將被除數除以 2 ,因為要轉成 2 進制
        • 將餘數累加到 binary 字串中,取餘數要使用 %
        • 判斷餘數是否為 1 
          • 若為 1 ,則出現次數 count 要累加
        • 商數更新至被除數,取商數要使用  /





CPE一顆星49題解答 - pdf 電子檔,售價 199 元,

購買電子檔可將筆記與完整解答帶著走,

坐車、上課時皆可隨時複習,

不受網路或廣告影響,

若有需要請來信購買 greens2314@gmail.com

留言

這個網誌中的熱門文章

CPE 一顆星選集題目說明與解答 - Java 筆記與心得分享

Visual Studio 自動排版格式化程式碼

1. Vito's family (CPE10406, UVA10041) - CPE一顆星解答與說明