def reverseInteger(x):
x_string = str(x)
x_list = list(x_string)
x_reversedlist = reversed(x_list)
x_reversedstring = "".join(x_reversedlist)
x_reversed = int(x_reversedstring)
return x_reversed
def paliproduct(i1, i2):
while i1 < 1000 and i2 < 1000:
product = i1 * i2
i1 += 1
i2 += 1
if product == reverseInteger(product):
return product
print(paliproduct(100, 100))
我使用Python(這是顯而易見的)...我的問題是,爲什麼外殼沒有嘗試爲i1的至i2所有可能的值(100定位最大的三位數產品 - 這也是一個plaindrome
if product == reverseInteger(product):
return product
如果你想找到:-999),並進行一個輪100和100 ......
'return'將返回_one_值,然後完全停止運行該函數。哦,啊! – 101
,因爲你有'return'。所以當你找到第一個匹配時,你基本上退出了paliproduct方法 – Ayman
正如人們所提到的那樣,它是'while'循環中的'return'。 (請注意,由於轉換回整數,您的'reverseInteger'函數無法像預期的那樣以0結尾。) –