Advertisement
Guest User

Untitled

a guest
Jun 22nd, 2017
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.78 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <math.h>
  3. #include <stdlib.h>
  4.  
  5. int isPalindrome(int n);
  6.  
  7. int main(void)
  8. {
  9.     /*
  10.     int x, y, prod, pal = 0;
  11.    
  12.     for (x = 100; x < 1000; x++)
  13.         for (y = 100; y < 1000; y++) {
  14.             prod = x * y;
  15.             if (isPalindrome(prod) && prod > pal)
  16.                 pal = prold;
  17.         }
  18.  
  19.     printf("Largest Palindrome: %d\n", pal);
  20.     */
  21.  
  22.     int x = 65356;
  23.     printf("%d\n", isPalindrom(x));
  24. }
  25.  
  26. int isPalindrome(int n)
  27. {
  28.     int firstDigit = n % 10, lastDigit;
  29.     int ncopy = n, numDigits = 0;
  30.  
  31.     do
  32.     {
  33.         lastDigit = ncopy;
  34.         numDigits++;
  35.     } while((ncopy /= 10) > 0);
  36.  
  37.     if (firstDigit == lastDigit)
  38.     {
  39.         if (numDigits <= 2)
  40.             return 1;
  41.  
  42.         // This line has major issues!!!
  43.         n = (n - lastDigit * ((int) pow(10, numDigits))) /10;
  44.  
  45.         return isPalindrome(n);
  46.     }
  47.  
  48.     return 0;
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement