Write a program in the java which takes as input an integer

Write a program in the java which takes as input an integer (positive or negative) in base 10, and returns a string representation in 32-bit of the number in hexadecimal and binary. Use a twos-complement representation for negative numbers You can create an array of symbols 0-F to make it easier to figure out each digit. char digits[]=[‘0’,’1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’,’A’,’B’,’C’,’D’,’E’,’F’]; then digits[12] will return ‘C’ You should convert the absolute value to binary first, then take the twos complement if the value is negative, then convert the binary to hexadecimal You may not use any built in conversion operators or print operators that can do the conversion automatically (i.e. NO printf(‘%x’,number)).

2. Write a program in the java which takes as input a string representation of an unsigned hexadecimal number in 32 bits and returns the positive integer that is the base 10 equivalent. You do not need to worry about negative values for this question You can use a dictionary, or brute force to convert hex digits to numbers (i.e. write a function with a bunch of if statements or a select statement to deal with digits A-F. or store the values 0-F as keys in a dictionary with the values being the number the digit represents. For both programs, all non-decimal numbers should be assumed to be 32-bit. When inputting or outputting binary or hex, please make sure the numbers represented are full 32-bit numbers. Do not leave off the leading 0’s or 1’s. Binary: 00001111110111010101111111011101 (32 digits) Hex: 0FDD5FDD (8 digits long)

Solution

import java.util.*;

public class HexConverter
{
public static int HexConvert(String s)
{
String hex = \"0123456789ABCDEF\";
s = s.toUpperCase();
int dec = 0;
for (int i = 0; i < s.length(); i++)
{
char c = s.charAt(i);
int d = hex.indexOf(c);
dec = 16*dec + d;
}
return dec;
}
public static void main(String args[])
{
String hex;
int dec;
Scanner sc = new Scanner(System.in);
      
System.out.print(\"Enter Hexadecimal Number : \");
hex = sc.nextLine();
      
dec = HexConvert(hex);
      
System.out.print(\"Its Decimal Number is \" + dec);
}
}

=====================================================================

Output:

akshay@akshay-Inspiron-3537:~/Chegg$ javac HexConverter.java
akshay@akshay-Inspiron-3537:~/Chegg$ java HexConverter
Enter Hexadecimal Number : F
Its Decimal Number is 15

====================================================

Please ask if you have any queries .I am happy to help you

Write a program in the java which takes as input an integer (positive or negative) in base 10, and returns a string representation in 32-bit of the number in he
Write a program in the java which takes as input an integer (positive or negative) in base 10, and returns a string representation in 32-bit of the number in he

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site