кодесурса

Упражнения на Java: преобразование шестнадцатеричного числа в двоичное число

script1adsense2code
script1adsense3code

Java Basic: упражнение 29 с решением

Напишите программу на Java для преобразования шестнадцатеричного числа в двоичное число.

Шестнадцатеричное число: Это позиционная система счисления с основанием или основанием, равным 16. Шестнадцатеричное число использует шестнадцать различных символов, чаще всего символы 0-9 для представления значений от нуля до девяти, и A, B, C, D, E, F (или альтернативно a, b, c, d, e, f) для представления значений от десяти до пятнадцати.

Двоичное число: двоичное число - это число, выраженное в системе счисления base-2 или двоичной системе счисления. Эта система использует только два символа: обычно 1 (один) и 0 (ноль).

Тестовые данные:
Введите любое шестнадцатеричное число: 37

Иллюстрированное представление: от шестнадцатеричного до двоичного числа


Пример решения:

Java-код:

import java.util.Scanner;
public class Exercise29 {
     public static int hex_to_decimal(String s)
    {
             String digits ="0123456789ABCDEF";
             s = s.toUpperCase();
             int val = 0;
             for (int i = 0; i < s.length(); i++)
             {
                 char c = s.charAt(i);
                 int d = digits.indexOf(c);
                 val = 16*val + d;
             }
             return val;
    }
    public static void main(String args[])
    {
        String hexdec_num;
        int dec_num, i=1, j;
        int bin_num[] = new int[100];
        Scanner scan = new Scanner(System.in);
		
        System.out.print("Enter Hexadecimal Number : ");
        hexdec_num = scan.nextLine();
        
        /* convert hexadecimal to decimal */        
        dec_num = hex_to_decimal(hexdec_num);
        
        /* convert decimal to binary */        
        while(dec_num != 0)
        {
            bin_num[i++] = dec_num%2;
            dec_num = dec_num/2;
        }
		
        System.out.print("Equivalent Binary Number is: ");
        for(j=i-1; j>0; j--)
        {
            System.out.print(bin_num[j]);
        }
        System.out.print("\n");
    }
}

Пример вывода:

 Введите шестнадцатеричное число: 37                                                                                 
Эквивалентный двоичный номер: 110111

Блок - схема:

«Блок-схема:

Редактор кода Java:

Внесите свой код и комментарии через Disqus.

Предыдущий: Напишите программу на Java для преобразования шестнадцатеричного числа в десятичное число.
Далее: Напишите программу на Java для преобразования шестнадцатеричного числа в восьмеричное число.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code