這是我所得到的所有進一步的資訊。
import math
num_to_convert = int(input("Please enter any intger from 1 and 100:")
while num_to_convert < 1 or num_to_convert > 100:
num_to_convert = int(input("對不起,這不是一個從1到100的整數,再試一次:")
else:
print("我輸了!")
我發現了這個,但我不明白發生了什么。也許對發生的事情做一些解釋會有幫助。
def decimalToBinary(n)。
if(n > 1) 。
# divide with integral result。
# (丟棄余數): # 除以積分結果。
decimalToBinary(n//2)
print(n%2, end=')
uj5u.com熱心網友回復:
看起來你想把一個不是十進制的整數轉換為二進制,從你的代碼中我可以寫到
while True:
try:
value1=input("Integer you want to convert to binary: "/span>)
binaryvalue=(bin(int(value1) )
print (binaryvalue[2:] )
except:
print("I did not understand that")
pass("我不明白")
uj5u.com熱心網友回復:
Valuetoconvert=int(input(" Number to convert: ")
u = format(Vuetoconvert, "08b"/span>)
print(u)
那就試試這個吧
uj5u.com熱心網友回復:見下文:
def toBin(n)。
if n < 2:
return str(n)
else:
if n % 2 == 0:
return toBin(n//2) "0"
else:
return toBin(n//2) "1"。
解釋:
這是我的解決方案,其作業原理與你類似。我希望你知道什么是遞回,否則這將很難理解。 不管怎么說,這個演算法是將數字反復除以2,直到數字小于2,因為這樣你就可以馬上得到遞回(基本情況)。
當當前的數字大于2時,你要檢查它是否能被2整除。 如果是偶數,你就在你的字串中添加一個0,否則就添加一個1。你可以在紙上試試,以便更好地理解。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/319338.html
標籤:
上一篇:斐波那契記憶化--通過lvalue與rvalue參考傳遞
下一篇:向多維陣列取值
