Untuk menyemak nombor palindrom, katakan nombor kami ialah 5 dan perduaannya ialah −
101
Palindrom bagi 101 ialah 101 dan untuk menyemak anda perlu membalikkan bit menggunakan fungsi berikut, di sini, ke kiri dan operator anjakan kanan bitwise digunakan −
public static long funcReverse(long num) { long myRev = 0; while (num > 0) { myRev <<= 1; if ((num & 1) == 1) myRev ^= 1; num >>= 1; } return myRev; }
Perwakilan sebenar kemudiannya dibandingkan dengan perwakilan terbalik dengan mengembalikan dan mendapatkan nilai daripada fungsi funcReverse() −
public static bool checkPalindrome(long num) { long myRev = funcReverse(num); return (num == myRev); }
Berikut adalah contoh lengkap untuk menyemak nombor Adakah perwakilan binari ialah palindrom −
Demo dalam talian
using System; public class Demo { public static long funcReverse(long num) { long myRev = 0; while (num > 0) { myRev <<= 1; if ((num & 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
Atas ialah kandungan terperinci Program C# untuk menyemak sama ada perwakilan binari ialah palindrom. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!