Dado un número hexadecimal N , la tarea es convertir el número a su equivalente decimal codificado en binario .
Ejemplos:
Entrada: 11F
Salida: 0001 0001 1111
Explicación:
Binario de 1 – 0001
Binario de F – 1111
Por lo tanto, el equivalente BCD es 0001 0001 1111
Entrada: AD
Salida: 1010 1101
Explicación:
Binario de A – 1010
Binario de D – 1101
Por lo tanto, equivalente BCD es 1010 1101
Enfoque: La idea es iterar sobre cada dígito del número hexadecimal dado y encontrar el equivalente binario de cuatro dígitos de ese dígito. Finalmente, imprima todos los dígitos convertidos uno por uno.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ implementation to convert the given // HexaDecimal number to its equivalent BCD. #include <bits/stdc++.h> using namespace std; // Function to convert // HexaDecimal to its BCD void HexaDecimaltoBCD(string s) { int len = s.length(), check = 0; int num = 0, sum = 0, mul = 1; // Iterating through the digits for (int i = 0; i <= len - 1; i++) { // check whether s[i] is a character // or a integer between 0 to 9 // and compute its equivalent BCD if (s[i] >= 47 && s[i] <= 52) cout << bitset<4>(s[i]) << " "; else cout << bitset<4>(s[i] - 55) << " "; } } // Driver Code int main() { string s = "11F"; // Function Call HexaDecimaltoBCD(s); return 0; }
Java
// Java implementation to convert the given // HexaDecimal number to its equivalent BCD. public class Main { // Function to convert // HexaDecimal to its BCD public static void HexaDecimaltoBCD(String s) { int len = s.length(), check = 0; int num = 0, sum = 0, mul = 1; // Iterating through the digits for (int i = 0; i <= len - 1; i++) { // check whether s[i] is a character // or a integer between 0 to 9 // and compute its equivalent BCD if (s.charAt(i) >= 47 && s.charAt(i) <= 52) { String result = Integer.toBinaryString((int)s.charAt(i)); System.out.print(result.substring(result.length() - 4) + " "); } else { String result = Integer.toBinaryString((int)s.charAt(i) - 55); System.out.print(result.substring(result.length() - 4) + " "); } } } public static void main(String[] args) { String s = "11F"; // Function Call HexaDecimaltoBCD(s); } } // This code is contributed by divyesh072019
Python3
# Python3 program to convert the given # HexaDecimal number to its equivalent BCD # Function to convert # Haxadecimal to BCD def HexaDecimaltoBCD(str): # Iterating through the digits for i in range(len(str)): # Conversion into equivalent BCD print("{0:04b}".format( int(str[i], 16)), end = " ") # Driver code str = "11F" # Function call HexaDecimaltoBCD(str) # This code is contributed by himanshu77
C#
// C# implementation to convert the given // HexaDecimal number to its equivalent BCD. using System; class GFG { // Function to convert // HexaDecimal to its BCD static void HexaDecimaltoBCD(string s) { int len = s.Length; // Iterating through the digits for (int i = 0; i <= len - 1; i++) { // check whether s[i] is a character // or a integer between 0 to 9 // and compute its equivalent BCD if (s[i] >= 47 && s[i] <= 52) { string result = Convert.ToString((int)s[i], 2); Console.Write(result.Substring(result.Length - 4) + " "); } else { string result = Convert.ToString((int)s[i] - 55, 2); Console.Write(result.Substring(result.Length - 4) + " "); } } } static void Main() { string s = "11F"; // Function Call HexaDecimaltoBCD(s); } } // This code is contributed by diyeshrabadiya07
Javascript
// JavaScript implementation to convert the given // HexaDecimal number to its equivalent BCD. // Function to convert // HexaDecimal to its BCD function HexaDecimaltoBCD(s) { var len = s.length; var check = 0; var num = 0; var sum = 0; var mul = 1; // Iterating through the digits for (var i = 0; i < len; i++) { // check whether s[i] is a character // or a integer between 0 to 9 // and compute its equivalent BCD if (s[i] >= '0' && s[i] <= '9') { var result = parseInt(s[i]).toString(2).padStart(4, "0"); process.stdout.write(result.substr(-4) + " "); } else { var result = (s[i].charCodeAt() - 55) .toString(2) .padStart(4, "0"); process.stdout.write(result.substr(-4) + " "); } } } // Driver Code var s = "11F"; // Function Call HexaDecimaltoBCD(s); // This code is contributed by phasing17
0001 0001 1111
Publicación traducida automáticamente
Artículo escrito por yashbeersingh42 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA