Truyền tham số cho hàm sử dụng biến

các a cho e hỏi là làm thế nào để truyền tham số cho hàm là biến đã được gán giá trị trước

b=1
a=0
def get_int_num(binnum):
    decnum = 0
    power = 0
    while binnum > 0 :
         decnum += 2 ** power * (binnum % 10)
         binnum //=10
         power += 1
    return decnum

print(get_int_num(bbaa))

ví dụ như hàm trên nếu truyền thằng số nhị phân vào hàm get_in_num thì chạy đúng nhưng e muốn truyền vào là biến như code e up thì làm thế nào ạ
e cám ơn

Đây nhé bạn, nối hết lại như chuỗi, sau đó cast sang kiểu number.

binnum = int(str(b) + str(b) + str(a) + str(a))
print(get_int_num(binnum))
1 Like

a cho e hỏi là e dùng lệnh print(type(a)) kiểm tra dạng của a thì là ‘int’ mà sao không thể gọi trực tiếp a,b mà phải ép sang int(str(a) trước ạ? em cám ơn

vậy bạn tính dùng công thức gì để ghép b và a lại như ý muốn ?
số thì một cộng hai trừ ba nhân 4 chia là cơ bản, nếu muốn ghép như ý bạn thì dùng công thức dãy số rồi cả lũy thừa rất phức tạp.
chuyển sang kiểu chuỗi, nối lại rồi đổi lại (parse) sang kiểu int thì dễ dàng hơn nhiều.

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?