HEX2BIN - Đổi hệ cơ số 16 sang hệ nhị phân

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift

Cho một số nguyên dương trong hệ cơ số ~16~, hãy viết số đó trong hệ cơ số ~2~ (hệ nhị phân).

Input

  • Dòng đầu ghi số nguyên dương ~T~ là số bộ test;
  • ~T~ dòng tiếp theo, mỗi dòng chứa một số nguyên dương ~n~ trong hệ thập lục phân (các ký tự A.. F viết hoa).

Giới hạn:

  • ~1≤T≤10^5,1≤n≤10^{18}~ (~n~ có không quá ~16~ chữ số ở hệ thập lục phân).

Output

  • Với mỗi số nguyên dương ~n~ trong hệ thập lục phân, in ra trên một dòng xâu nhị phân biểu diễn số đó trong hệ nhị phân (không bắt đầu bởi số ~0~).

Sample

Input #1
3
5
7
A
Output #1
101
111
1010

Problem source: Chuyên Sơn La Online Judge


Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    gtmailong  đã bình luận lúc 27, Tháng 4, 2024, 12:40

    Full AC

    #include <iostream>
    #include <iomanip>
    
    using namespace std;
    
    void DecToBin(int n, bool ok){
        string s = "";
        while(n>0){
            char index = (n%2) + '0';
            s = index + s;
            n/=2;
        }
        int m =  4- s.size();
        if (s.size() != 4 && ok) {
            for (int i = 1; i <= m; i++){
                s = '0' + s;
            }
        }
        cout << s;
    }
    
    int HexToNumber(char s){
        if (s >= 'A') return (s - 'A' + 10);
        return (s - '0');
    }
    
    void HexToBin(string s){
        for (int i = 0; i < s.size(); i++){
            int index = HexToNumber(s[i]);
            if (i == 0) DecToBin(index,0);
            else DecToBin(index,1);
        }
        cout << '\n';
    }
    
    int main() {
        int n;
        cin >> n;
        while (n--){
            string s;
            cin >> s;
            HexToBin(s);
        }
        return 0;
    }
    

  • 0
    yammm  đã bình luận lúc 19, Tháng 2, 2024, 14:41

    code lỏ bằng python

    T = int(input())
    for _ in range(T):
       HexademicalNum = input()
       DemicalNum = int(HexademicalNum, 16)
       BinaryNum = bin(DemicalNum)
       ans = BinaryNum[2:]
    print(ans)
    

  • -1
    hohoanghai5042011  đã bình luận lúc 20, Tháng 1, 2024, 6:07 chỉnh sửa

    to string là ra uy tín lun ai muốn xem code mẫu thì liên hệ gmail của mình