[英]I am making a code to turn a Binary number into decimal number, This is what I have done, Can someone tell where I am wrong, (i am 1 month into Python
n = int(input("Enter the binary number : "))
n_into_str = str(n)
lenf = len(n_into_str)
def calculate(n):
ans = 0
for i in range(lenf):
z = n%10
power = 2**i
k = z*power
value = z
ans = ans + z
print(ans)
calculate(n)
你幾乎很好,但你需要ans = ans + k
和ans = ans + z
,並將n
除以 10,以刪除最后一個數字
對 select 數字使用數學運算的版本
def calculate(n: int):
ans = 0
for i in range(len(str(n))):
z = n % 10
n = n // 10
power = 2 ** i
k = z * power
ans = ans + k
print(ans)
n = int(input("Enter the binary number : "))
calculate(n)
使用字符串索引到 select 數字的版本
def calculate(n: str):
ans = 0
for i, digit in enumerate(reversed(n)):
power = 2 ** i
k = int(digit) * power
ans = ans + k
print(ans)
n = input("Enter the binary number : ")
calculate(n)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.