Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Write a program to generate and print all symmetric numbers in given range
- * [startβ¦end] (0 β€ start β€ end β€ 999).
- * A number is symmetric if its digits are symmetric toward its middle.
- * For example, the numbers 101, 33, 989 and 5 are symmetric,
- * but 102, 34 and 997 are not symmetric.*/
- import java.util.Scanner;
- public class _01_SymmetricNumbersInRange {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- Scanner scan = new Scanner(System.in);
- System.out.println("Enter two Integer numbers in the Range [0 .. 999], separated by a space:");
- int firstNum = scan.nextInt();
- int secondNum = scan.nextInt();
- if (firstNum >= 0 && firstNum < 1000 && secondNum >= 0 && secondNum < 1000) {
- int start = firstNum;
- int end = secondNum;
- if (firstNum > secondNum) {
- start = secondNum;
- end = firstNum;
- }
- System.out.println("All Symmetric numbers in given range are:");
- for (int i = start; i <= end; i++) {
- boolean numberIsSymmetric = checkTheNumberIsSymmetric(i);
- if (numberIsSymmetric) {
- System.out.print(i + " ");
- }
- }
- } else {
- System.out.println("Error! - Input number is Out of Range!!!");
- }
- }
- private static boolean checkTheNumberIsSymmetric(int number) {
- if (number < 10) {
- return true;
- }
- int lastDigit = number % 10;
- int firstDigit = number / 100;
- if (number < 100) {
- firstDigit = number / 10;
- }
- return firstDigit == lastDigit;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement