Java: Convert a decimal number to hexadecimal number
Decimal to Hexadecimal Converter
Write a Java program to convert a decimal number to a hexadecimal number.
Decimal number: The decimal numeral system is the standard system for denoting integer and non-integer numbers. It is also called base-ten positional numeral system.
Hexadecimal number: Hexadecimal is a positional numeral system with a radix, or base, of 16. It uses sixteen distinct symbols, most often the symbols 0-9 to represent values zero to nine, and A, B, C, D, E, F (or alternatively a, b, c, d, e, f) to represent values ten to fifteen.
Test Data:
Input a decimal number: 15
Pictorial Presentation: Decimal to Hexadecimal number
Sample Solution:
Java Code:
import java.util.Scanner;
public class Exercise20 {
public static void main(String args[]) {
// Declare variables to store decimal number and remainder
int dec_num, rem;
// Initialize an empty string for the hexadecimal number
String hexdec_num = "";
// Define the hexadecimal number digits
char hex[] = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
// Create a Scanner object to read input from the user
Scanner in = new Scanner(System.in);
// Prompt the user to input a decimal number
System.out.print("Input a decimal number: ");
dec_num = in.nextInt();
// Convert the decimal number to hexadecimal
while (dec_num > 0) {
rem = dec_num % 16;
hexdec_num = hex[rem] + hexdec_num;
dec_num = dec_num / 16;
}
// Display the hexadecimal representation of the decimal number
System.out.print("Hexadecimal number is: " + hexdec_num + "\n");
}
}
Explanation:
In the exercise above -
- It takes a decimal number ('dec_num') as input from the user using the "Scanner" class.
- It initializes an empty string 'hexdec_num' to store the hexadecimal representation and defines an array 'hex' containing hexadecimal digits (0-9 and A-F).
- It enters a loop to perform the decimal-to-hexadecimal conversion:
- In each iteration, it calculates the remainder of 'dec_num' when divided by 16 (which gives the hexadecimal digit) and appends it to the 'hexdec_num' string.
- It then updates 'dec_num' by dividing it by 16.
- The loop continues until 'dec_num' becomes zero, effectively converting the entire decimal number to hexadecimal.
- After the loop, it prints the hexadecimal representation of the decimal number stored in the 'hexdec_num' string.
Sample Output:
Input a decimal number: 15 Hexadecimal number is : F
Flowchart:
Java Code Editor:
Previous: Write a Java program to convert a decimal number to binary number.
Next: Write a Java program to convert a decimal number to octal number.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics