📜  程序检查数字是否为回文

📅  最后修改于: 2021-04-24 04:58:17             🧑  作者: Mango

给定整数N ,编写一个程序,如果给定数字是回文,则返回true,否则返回false。
例子:

Input: N = 2002 
Output: true

Input: N = 1234
Output: false

方法:
此问题的一个简单的方法是为n的第一反向数字,然后比较N N相反。如果两者相同,则返回true,否则返回false。
下面是上述方法的实现:

C++
// C program to check whether a number
// is Palindrome or not.
 
#include 
 
/* Iterative function to reverse digits of num*/
int reverseDigits(int num)
{
    int rev_num = 0;
    while (num > 0) {
        rev_num = rev_num * 10 + num % 10;
        num = num / 10;
    }
    return rev_num;
}
 
/* Function to check if n is Palindrome*/
int isPalindrome(int n)
{
 
    // get the reverse of n
    int rev_n = reverseDigits(n);
 
    // Check if rev_n and n are same or not.
    if (rev_n == n)
        return 1;
    else
        return 0;
}
 
/*Driver program to test reversDigits*/
int main()
{
    int n = 4562;
    printf("Is %d a Palindrome number? -> %s\n", n,
           isPalindrome(n) == 1 ? "true" : "false");
 
    n = 2002;
    printf("Is %d a Palindrome number? -> %s\n", n,
           isPalindrome(n) == 1 ? "true" : "false");
    return 0;
}


Java
// Java program to check whether a number
// is Palindrome or not.
 
class GFG
{
    /* Iterative function to reverse digits of num*/
    static int reverseDigits(int num)
    {
        int rev_num = 0;
        while (num > 0) {
            rev_num = rev_num * 10 + num % 10;
            num = num / 10;
        }
        return rev_num;
    }
     
    /* Function to check if n is Palindrome*/
    static int isPalindrome(int n)
    {
     
        // get the reverse of n
        int rev_n = reverseDigits(n);
     
        // Check if rev_n and n are same or not.
        if (rev_n == n)
            return 1;
        else
            return 0;
    }
     
    /*Driver program to test reversDigits*/
    public static void  main(String []args)
    {
        int n = 4562;
        System.out.println("Is" + n + "a Palindrome number? -> " +
            (isPalindrome(n) == 1 ? "true" : "false"));
     
        n = 2002;
         
        System.out.println("Is" + n + "a Palindrome number? -> " +
            (isPalindrome(n) == 1 ? "true" : "false"));
 
    }
 
}
 
// This code is contributed
// by Hritik Raj ( ihritik )


Python3
# Python3 program to check whether a
# number is Palindrome or not.
 
# Iterative function to reverse
# digits of num
def reverseDigits(num) :
 
    rev_num = 0;
    while (num > 0) :
        rev_num = rev_num * 10 + num % 10
        num = num // 10
     
    return rev_num
 
# Function to check if n is Palindrome
def isPalindrome(n) :
 
    # get the reverse of n
    rev_n = reverseDigits(n);
 
    # Check if rev_n and n are same or not.
    if (rev_n == n) :
        return 1
    else :
        return 0
 
# Driver Code
if __name__ == "__main__" :
 
    n = 4562
     
    if isPalindrome(n) == 1 :
        print("Is", n, "a Palindrome number? ->", True)
         
    else :
        print("Is", n, "a Palindrome number? ->", False)
 
    n = 2002
     
    if isPalindrome(n) == 1 :
        print("Is", n, "a Palindrome number? ->", True)
         
    else :
        print("Is", n, "a Palindrome number? ->", False)
 
# This code is contributed by Ryuga


C#
// C# program to check whether a number
// is Palindrome or not.
 
using System;
class GFG
{
    /* Iterative function to reverse digits of num*/
    static int reverseDigits(int num)
    {
        int rev_num = 0;
        while (num > 0) {
            rev_num = rev_num * 10 + num % 10;
            num = num / 10;
        }
        return rev_num;
    }
     
    /* Function to check if n is Palindrome*/
    static int isPalindrome(int n)
    {
     
        // get the reverse of n
        int rev_n = reverseDigits(n);
     
        // Check if rev_n and n are same or not.
        if (rev_n == n)
            return 1;
        else
            return 0;
    }
     
    /*Driver program to test reversDigits*/
    public static void  Main()
    {
        int n = 4562;
        Console.WriteLine("Is" + n + "a Palindrome number? -> " +
            (isPalindrome(n) == 1 ? "true" : "false"));
     
        n = 2002;
         
        Console.WriteLine("Is" + n + "a Palindrome number? -> " +
            (isPalindrome(n) == 1 ? "true" : "false"));
 
    }
 
}
 
// This code is contributed
// by Hritik Raj ( ihritik )


PHP
 0)
    {
        $rev_num = $rev_num * 10 +
                   $num % 10;
        $num = $num / 10;
    }
    return $rev_num;
}
 
// Function to check if n is Palindrome
function isPalindrome($n)
{
 
    // get the reverse of n
    $rev_n = reverseDigits($n);
 
    // Check if rev_n and n are same or not.
    if ($rev_n == $n)
        return 1;
    else
        return 0;
}
 
// Driver Code
$n = 4562;
echo "Is ", $n , " a Palindrome number? ->";
 
if(isPalindrome($n) == 1)
    echo "true" ;
else
    echo "false";
echo "\n";
 
$n = 2002;
echo "Is ", $n , " a Palindrome number? ->";
if(isPalindrome(!$n))
    echo "true" ;
else
    echo "false";
 
// This code is contributed by jit_t
?>


Javascript


输出:
Is 4562 a Palindrome number? -> false
Is 2002 a Palindrome number? -> true