# 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:

This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.

 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.