# Find numbers which are palindrome in both their decimal and octal Representations

Objective: Given a range of integers, find all the numbers which are palindrome when they are represented in Decimal Value( base 10) and in Octal value(base 8).

Example :

```Number : 373 (Decimal) and digits are palindrome.

Convert it into Octal which is 565 and that's also palindrome.
```

Approach:

Solution is quite simple. Traverse through all the numbers in the given range and check if it palindrome, if yes, convert it into Octal and check for palindrome again.

Code:

 public class DecimalOctalPalindrome { public String DecimalToOctal(int N) { String Oct = ""; while (N > 0) { int x = N % 8; N = N / 8; Oct += x; } return Oct; } public boolean isPalindrome(String S) { int i = 0; int j = S.length() – 1; while (i < j) { if (S.charAt(i) != S.charAt(j)) { return false; } i++; j—; } return true; } public void findBothPalindrome(int start, int end) { for (int i = start; i <= end; i++) { String decimal = String.valueOf(i); if (isPalindrome(decimal)) { String Oct = DecimalToOctal(i); if (isPalindrome(Oct)) { System.out.print(Oct + " "); } } } } public static void main(String[] args) { DecimalOctalPalindrome d = new DecimalOctalPalindrome(); d.findBothPalindrome(1, 2000); } }

Output:

```1  2  3  4  5  6  7  11  171  444  515  565  636  1111
```

This site uses Akismet to reduce spam. Learn how your comment data is processed.