#Python3中個位數字和十位數字對調, 其乘積不變
阿新 • • 發佈:2018-12-14
兩位數13和62具有很有趣的性質,把它們個位數字和十位數字對調, 其乘積不變,即13 * 62 31 * 26。 程式設計序求共有多少對這種性質的兩位數,個位與十位相同的不在此列 如11、22 重複出現的不在此列 如 1362與6213
count = 0
for i in range(11, 100):
first_left = i // 10
first_right = i % 10
if first_left == first_right: #減少程式迴圈次數,因為後面的 for j in range(i + 1, 100)
continue # 已經解決了11、22 重複出現的不在此列 和 13*62與62*13不在佇列
for j in range(i + 1, 100): #遍歷出數字並找出個位和十位
second_left = j // 10
second_right = j % 10
if second_left == second_right: #同理減少迴圈次數
continue
newfirst = first_right * 10 + first_left
newsecond = second_right * 10 + second_left
if i * j == newfirst * newsecond: #進行if判斷
print(' {} * {} = {} * {}'.format(i, j, newfirst, newsecond))
count += 1
print(count)