使用 JavaScript 計算和新增二進位制中的奇偶校驗位


奇偶校驗位

奇偶校驗位或檢查位是新增到一串位中的一個位,以確保字串中 1 位的總數為偶數或奇數。

問題

我們需要編寫一個 JavaScript 函式,它接受兩個引數,一個是所需的奇偶校驗(始終為“偶數”或“奇數”),另一個是我們要檢查的數字的二進位制表示形式。

我們函式的任務是返回一個整數(0 或 1),這是我們需要新增到二進位制表示中的奇偶校驗位,以便結果字串的奇偶校驗符合預期。

示例

以下是程式碼 −

 線上演示

const parity = 'even';
const bin = '0101010';
const findParity = (parity, bin) => {
   const arr = bin
   .toString()
   .split("");
   let countOnes = 0;
   let res = 0;
   for (let i = 0; i < arr.length; i++) {
      if (arr[i] == 1) {
         countOnes += 1;
      }
   };
   if (parity == 'even') {
      if (countOnes%2 == 0) {
         res = 0;
      } else {
         res = 1;
      }
   } else {
      if (countOnes%2 !== 0) {
         res = 0;
      } else {
         res = 1;
      }
   };
   return res;
};
console.log(findParity(parity, bin));

輸出

1

更新於: 21-04-2021

583 瀏覽

開啟你的 職業生涯

透過完成課程獲取認證

馬上開始
廣告