Course
Introduction
C++ "Hello, World!" ProgramPrint Number Entered by UserAdd Two NumbersFind Quotient and RemainderFind Size of int, float, double and char in Your SystemSwap Two NumbersFind ASCII Value of a CharacterMultiply two NumbersDecisions and Loops
Check Whether Number is Even or OddCheck Whether a character is Vowel or ConsonantFind Largest Number Among Three NumbersFind All Roots of a Quadratic EquationCalculate Sum of Natural NumbersCheck Leap YearFind FactorialGenerate Multiplication TableDisplay Fibonacci SeriesFind GCDFind LCMReverse a NumberCalculate Power of a NumberCheck Whether a Number is Palindrome or NotCheck Whether a Number is Prime or NotDisplay Prime Numbers Between Two IntervalsCheck Armstrong NumberDisplay Armstrong Number Between Two IntervalsDisplay Factors of a NumberCreate Pyramid and PatternMake a Simple Calculator to Add, Subtract, Multiply or Divide Using switch...caseFunctions
Display Prime Numbers Between Two Intervals Using FunctionsCheck Prime Number By Creating a FunctionCheck Whether a Number can be Express as Sum of Two Prime NumbersFind Sum of Natural Numbers using RecursionCalculate Factorial of a Number Using RecursionFind G.C.D Using RecursionConvert Binary Number to Decimal and vice-versaConvert Octal Number to Decimal and vice-versaConvert Binary Number to Octal and vice-versaReverse a Sentence Using RecursionCalculate Power Using RecursionArrays and Strings
Calculate Average of Numbers Using ArraysFind Largest Element of an ArrayCalculate Standard DeviationAdd Two Matrix Using Multi-dimensional ArraysMultiply Two Matrix Using Multi-dimensional ArraysFind Transpose of a MatrixMultiply two Matrices by Passing Matrix to FunctionAccess Elements of an Array Using PointerSwap Numbers in Cyclic Order Using Call by ReferenceFind the Frequency of Characters in a StringFind the Number of Vowels, Consonants, Digits and White Spaces in a StringRemove all Characters in a String Except AlphabetsFind the Length of a StringConcatenate Two StringsCopy StringsSort Elements in Lexicographical Order (Dictionary Order)Java Program to Reverse a Number
To understand this example, you should have the knowledge of the following Java programming topics:
Example 1: Reverse a Number using a while loop in Java
class Main {
public static void main(String[] args) {
int num = 1234, reversed = 0;
System.out.println("Original Number: " + num);
// run loop until num becomes 0
while(num != 0) {
// get last digit from num
int digit = num % 10;
reversed = reversed * 10 + digit;
// remove the last digit from num
num /= 10;
}
System.out.println("Reversed Number: " + reversed);
}
}
Output
Reversed Number: 4321
In this program, while loop is used to reverse a number as given in the following steps:
- First, the remainder of the num divided by 10 is stored in the variable digit. Now, the digit contains the last digit of num, i.e. 4. digit is then added to the variable reversed after multiplying it by 10. Multiplication by 10 adds a new place in the reversed number. One-th place multiplied by 10 gives you tenth place, tenth gives you hundredth, and so on. In this case, reversed contains 0 * 10 + 4 = 4. num is then divided by 10 so that now it only contains the first three digits: 123.
- After second iteration, digit equals 3, reversed equals 4 * 10 + 3 = 43 and num = 12
- After third iteration, digit equals 2, reversed equals 43 * 10 + 2 = 432 and num = 1
- After fourth iteration, digit equals 1, reversed equals 432 * 10 + 1 = 4321 and num = 0
- Now num = 0, so the test expression
num != 0
fails and while loop exits. reversed already contains the reversed number 4321.
Example 2: Reverse a number using a for loop in Java
class Main {
public static void main(String[] args) {
int num = 1234567, reversed = 0;
for(;num != 0; num /= 10) {
int digit = num % 10;
reversed = reversed * 10 + digit;
}
System.out.println("Reversed Number: " + reversed);
}
}
Output
Reversed Number: 7654321
In the above program, the while loop is replaced by a for loop where:
- no initialization expression is needed inside the loop since
num
is already initialized before the loop and we want to avoid resetting it with each iteration - test expression remains the same (
num != 0
) - update/increment expression contains
num /= 10
.
So, after each iteration, the update expression runs which removes the last digit of num.
When the for loop exits, reversed will contain the reversed number.
Also Read: