u Code

Chuyển đổi hệ cơ số trong Python

  • Chuyển đối hệ cơ số 10 sang hệ cơ số B
    Cách chuyển đổi số nguyên N từ hệ cơ số 10 sang hệ cơ số 2, trong ảnh dưới đây là ví dụ chuyển số 15 và số 6 sang hệ cơ số 2:

    Gán m = 15.
    Put phần dư m chia cho 2 (m % 2) vào stack.
    Gán m = m / 2.
    Nếu m > 0 quay lại bước 2.
    Đảo ngược lại stack ta được số cần tính.

    Ví dụ chuyển đối hệ cơ số 10 sang hệ cơ số B
    Giả sử hệ cơ số cần chuyển là 2 <= B <= 16. Số đại điện cho hệ cơ số B > 10 là A = 10, B = 11, C = 12, D = 13, E = 14, F = 15.

    Chúng ta tạo ra một chương trình như sau để chuyển đổi hệ cơ số trong python:

    """
    # Chuyển đổi số nguyên n sang hệ cơ số b
    #
    # @author viettuts.vn
    # @param n: so nguyen
    # @param b: he co so
    # @return he co so b
    """
    def convert_number(n, b):
        if (n < 0 or b < 2 or b > 16):
            return "";
     
        sb = "";
        m = 0;
        remainder = n;
     
        while (remainder > 0):
            if (b > 10):
                m = remainder % b;
                if (m >= 10):
                    sb = sb + str(chr(55 + m));
                else:
                    sb = sb + str(m);
            else:
                sb = sb + str(remainder % b);
            remainder = int(remainder / b);
        return "".join(reversed(sb)); # đảo ngược chuỗi sb
     
    n = int(input("Nhập số nguyên dương n = "));
    print("Hệ cơ số 2 của số nguyên ", n, "là:", convert_number(n, 2))
    print("Hệ cơ số 16 của số nguyên ", n, "là:", convert_number(n, 16))
    

    Kết quả:

    Nhập số nguyên dương n = 15
    Hệ cơ số 2 của số nguyên  15 là: 1111
    Hệ cơ số 16 của số nguyên  15 là: F
    

Khóa học

Thẻ

Blog

Thẻ

Thông tin

uCode cung cấp các khóa học lập trình tương tác với Python, Scratch, C/C++, Pascal, Game, Thuật toán, Web, Ứng dụng di động… cho tất cả mọi lứa tuổi, từ học sinh tiểu học đến người đi làm. Các khóa học được biên soạn bởi các chuyên gia giàu kinh nghiệm với những video, bài giảng tương tác, bài tập trực quan và những dự án thực tế. Tất cả đều được thực hiện ngay trên trình duyệt web của bạn.