पालिंड्रोम जांचने के लिए, मान लीजिए हमारी संख्या 5 है, जिसका बाइनरी है:
101
101 का पालिंड्रोम 101 है और जांचने के लिए आपको निम्न फंक्शन का उपयोग करके बिट्स को रिवर्स करना होगा। यहां बिटवाइज़ लेफ्ट और राइट शिफ्ट ऑपरेटर्स का उपयोग किया गया है:
public static long funcReverse(long num) { long myRev = 0; while (num > 0) { myRev <<= 1; if ((num & 1) == 1) myRev ^= 1; num >>= 1; } return myRev; }फिर वास्तविक प्रतिनिधित्व की तुलना funcReverse() फंक्शन से वापस आए रिवर्स मान से की जाएगी:
public static bool checkPalindrome(long num) { long myRev = funcReverse(num); return (num == myRev); }उदाहरण
किसी संख्या का बाइनरी प्रतिनिधित्व पालिंड्रोम है या नहीं जांचने का पूर्ण उदाहरण:
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() { // 5 का बाइनरी मान 101 है long num = 5; if (checkPalindrome(num)) Console.WriteLine("Palindrome Number"); else Console.WriteLine("Not a Palindrome Number"); } }आउटपुट
Palindrome Number