首页 > 后端开发 > C#.Net教程 > 检查二进制表示形式是否回文的 C# 程序

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

王林
发布: 2023-09-13 11:21:08
转载
1336 人浏览过

检查二进制表示形式是否回文的 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
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板