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

Bài viết được sự cho phép của ucode.vn
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.
Xem thêm nhiều việc làm python hấp dẫn trên Station D
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
Bạn có thể quan tâm
- Applicant Tracking System là gì? ATS hoạt động ra sao(Cẩm Nang Tuyển Dụng)
- Vừa đủ để đi (go)(Công Nghệ)
- Tôi không phải là lập trình viên thực sự?(Công Nghệ)