Given a decimal number N, convert N into an equivalent hexadecimal number i.e. convert the number with base value 10 to base value 16. The decimal number system uses 10 digits 0-9 and the Hexadecimal number system uses 0-9, A-F to represent any numeric value.
Examples of Decimal to Hexadecimal Conversion
Input : 10
Output: AInput : 2545
Output: 9F1
Algorithm
- Store the remainder when the number is divided by 16 in an array.
- Divide the number by 16 now
- Repeat the above two steps until the number is not equal to 0.
- Print the array in reverse order now.
Program for Decimal to Hexadecimal Conversion in Java
// Java program to convert Decimal Number // to Hexadecimal Number // Importing input output classes import java.io.*;
// Main class public class GFG {
// Method 1
// To convert decimal to hexadecimal
static void decTohex( int n)
{
// Creating an array to store octal number
int [] hexNum = new int [ 100 ];
// counter for hexadecimal number array
int i = 0 ;
while (n != 0 ) {
// Storing remainder in hexadecimal array
hexNum[i] = n % 16 ;
n = n / 16 ;
i++;
}
// Printing hexadecimal number array
// in the reverse order
for ( int j = i - 1 ; j >= 0 ; j--) {
if (hexNum[j] > 9 )
System.out.print(( char )( 55 + hexNum[j]));
else
System.out.print(hexNum[j]);
}
}
// Method 2
// Main driver method
public static void main(String[] args)
{
// Custom input decimal number
// to be converted into hexadecimal number
int n = 2545 ;
// Calling the above Method1 over number 'n'
// to convert this decimal into hexadecimal number
decTohex(n);
}
} |
9F1
The complexity of the above method:
Time Complexity: O(log N)
Auxiliary Space: O(1)
Another Method Using Integer.toString()
The java.lang.Integer.toString(int a, int base) is an inbuilt method in Java that is used to return a string representation of the argument in the base, specified by the second argument base. If the radix/base is smaller than the Character.MIN_RADIX or larger than Character.MAX_RADIX, then the base 10 is used. The ASCII characters are used as digits: 0 to 9 and a to z.
Syntax
public static String toString(int a, int base)
Parameter: The method accepts two parameters:
- a: This is of integer type and refers to the integer value that is to be converted.
- base: This is also of integer type and refers to the base that is to be used while representing the strings.
Return Value: The method returns a string representation of the specified argument in the specified base.
Examples:
Input: a = 71, base = 2
Output: 1000111Input: a = 314, base = 16
Output: 13a
Java Program to Convert Decimal to Hexadecimal using Integer.toString() Method
// To convert Decimal to // Hexadecimal Number import java.util.*;
// Main driver method public class Main {
public static void main(String[] args)
{
// Number in decimal
int number = 2545 ;
// output
System.out.println(Integer.toString(number, 16 ));
}
} |
9f1
Complexity of the above method
Time complexity: O(N)
Auxiliary Space: O(1)