In this article, we will write a simple Java program to reverse a number
1. Reverse a Number :
- We will reverse a number using 2 different loops,
- using while loop
- using for loop
1.1 Reverse a Number using while-loop :
- Declare a temporary variable called reversed which stores partial reversed number in every iterations
- Iterate using while loop by checking whether number is greater-than Zero
- Inside while loop, in each iteration update reversed variable by summing 2 things
- 1st multiply current reversed value with 10
- 2nd get remainder of the current number after modulo by 10
- For next iteration, get new number by dividing current number by 10
- Finally, return reversed number to the calling method for printing to console
ReverseNumberUsingWhileLoop.java
package in.bench.resources.numbers;
public class ReverseNumberUsingWhileLoop {
// main() method
public static void main(String[] args) {
// lets reverse year 1987
System.out.println("The reverse of number 1987 is = "
+ reverseNumber(1987));
// lets reverse year 2023
System.out.println("The reverse of number 2023 is = "
+ reverseNumber(2023));
}
/**
* This method is used to reverse number using while-loop
*
* @param number
* @return
*/
public static int reverseNumber(int number) {
// local variable
int reversed = 0;
while(number != 0) {
// build reverse number by iterating
reversed = (reversed * 10) + (number % 10);
// get next number
number = number / 10;
}
// return reversed number
return reversed;
}
}
Output:
The reverse of number 1987 is = 7891
The reverse of number 2023 is = 3202
1.2 Reverse a Number using for-loop :
- Declare a temporary variable called reversed which stores partial reversed number in every iterations
- Iterate using for-loop
- 1st assign temp number with given/input number
- 2nd put condition by checking whether number is greater-than Zero
- 3rd to get new number for next iteration, divide current number by 10
- Inside for-loop, in each iteration update reversed variable by summing 2 things
- 1st multiply current reversed value with 10
- 2nd get remainder of the current number after modulo by 10
- Finally, return reversed number to the calling method for printing to console
ReverseNumberUsingForLoop.java
package in.bench.resources.numbers;
public class ReverseNumberUsingForLoop {
// main() method
public static void main(String[] args) {
// lets reverse year 1999
System.out.println("The reverse of number 1999 is = "
+ reverseNumber(1999));
// lets reverse year 2014
System.out.println("The reverse of number 2014 is = "
+ reverseNumber(2014));
}
/**
* This method is used to reverse number using for-loop
*
* @param input
* @return
*/
public static int reverseNumber(int input) {
// local variable
int reversed = 0;
for(int num = input; num != 0; num = num / 10) {
// build reverse number by iterating
reversed = (reversed * 10) + (num % 10);
}
// return reversed number
return reversed;
}
}
Output:
The reverse of number 1999 is = 9991
The reverse of number 2014 is = 4102
Related Articles:
- Java – To print first N natural numbers
- Java – Swapping two numbers without temporary variable
- Java – Swapping two numbers using third or temporary variable
- Java – Check whether the given number is Armstrong number or Not ?
- Java – Check whether number is Positive or Negative or Zero ?
- Java – Check whether number is Even or Odd ?
- Java – How to Reverse a Number in different ways ?
- Java – Check whether number is Prime or Not ?
- Java – Print Prime numbers between specified range or interval
- Java – How to find/remove first and last digit of a number ?
- Java – How to generate Fibonacci numbers using Stream ?
- Java – How to convert Roman letter/numbers to Integer ?
- Java – How to convert Celsius to Fahrenheit and vice-versa ?
Happy Coding !!
Happy Learning !!