檢查二進位表示形式是否回文的 C# 程序

王林
發布: 2023-09-13 11:21:08
轉載
1276 人瀏覽過

检查二进制表示形式是否回文的 C# 程序

要檢查回文數,假設我們的數字是5,其二進位為−

101
登入後複製

The palindrome of 101 is 101 and to check you need to reverse the bits using the following function. Here, bitwise left and bitwise right shift operators are used −

public static long funcReverse(long num) {
   long myRev = 0;
   while (num > 0) {
      myRev <<= 1;
      if ((num &amp; 1) == 1)
         myRev ^= 1;
      num >>= 1;
   }
   return myRev;
}
登入後複製

然後透過從funcReverse()函數傳回和取得值,將實際表示與反向表示進行比較−

public static bool checkPalindrome(long num) {
   long myRev = funcReverse(num);
   return (num == myRev);
}
登入後複製

Example

以下是一個完整的範例,用於檢查一個數字的二進位表示是否是回文−

線上示範

using System;
public class Demo {
   public static long funcReverse(long num) {
      long myRev = 0;
      while (num > 0) {
         myRev <<= 1;
         if ((num &amp; 1) == 1)
            myRev ^= 1;
         num >>= 1;
      }
      return myRev;
   }
   public static bool checkPalindrome(long num) {
      long myRev = funcReverse(num);
      return (num == myRev);
   }
   public static void Main() {
      // Binary value of 5 us 101
      long num = 5;
      if (checkPalindrome(num))
         Console.WriteLine("Palindrome Number");
      else
         Console.WriteLine("Not a Palindrome Number");
   }
}
登入後複製

輸出

Palindrome Number
登入後複製

以上是檢查二進位表示形式是否回文的 C# 程序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板