我是 python 新手并試圖理解遞回。我正在嘗試撰寫一個代碼,其中有人輸入 2 個數字(Num1,Num2)。將進行計算,直到 Num1 大于 Num 2。然后應輸出計算的最終值的結果。
這是我的代碼:
def Recursive(Num1, Num2):
if Num1 > Num2:
return(10)
else:
if Num1 == Num2:
return(Num1)
else:
return(Num1 Recursive(Num1 * 2, Num2))
Num1=input("Enter number 1: ")
Num2=input("Enter number 2: ")
print("Final value: ", Recursive(Num1, Num2))
這是出來的輸出:
Enter number 1: 1
Enter number 2: 15
而已。我的列印陳述句沒有輸出。我對我在這里做錯了什么以及我應該做什么感到困惑。
uj5u.com熱心網友回復:
def Recursive(Num1, Num2):
if Num1 > Num2:
return 10
if Num1 == Num2:
return Num1
print(Num1, Num2)
return Num1 Recursive(Num1 * 2, Num2)
Num1=int(input("Enter number 1: "))
Num2=int(input("Enter number 2: "))
print("Final value: ", Recursive(Num1, Num2))
這應該是作業代碼,您的代碼無法作業的原因是因為程式中沒有int將Num1 = int( input("") )數字作為字串讀取。結果,而不是2從什么Num1 * 2時候Num1得到,因為它是乘以一個字串而不是一個整數。111
# Here is an example
a = input("Input a number: ")
b = int(input("input a number: "))
print(f"a is a:{type(a)}\n b is a:{type(b)}")
print(f"{a * 2}\n{b * 2}")
復制上面的代碼輸入兩個數字,它應該可以讓您更好地理解我剛才所說的內容。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/528335.html
標籤:Python递归
