您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了Python3如何實現個位數字和十位數字對調, 其乘積不變,內容簡而易懂,希望大家可以學習一下,學習完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。
兩位數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)
補充知識:Python反轉三位整數有幾種方法?
廢話不多說,開始今天的題目:
問:說說Python反轉三位整數有幾種方法?
答:這是leetcode上的一道編程算法題,感覺還是蠻經典的,今天就拿出來給大家分享一下!給出一個3位的正整數,你需要將這個整數中每位上的數字進行反轉。例如:輸入: 123,輸出: 321 。大家先不看下面答案,看看如果是自己,可以想出幾種Python方式來解決!
下面分別來說說幾種實現的方式:
1、取余取整方式
class Test: def reverseInteger(self, number): g = number%10 #取出個位數 s = (int(number/10))%10 #取出十位數 b = int(number/100) #取出百位數 return g*100+s*10+b if __name__ == "__main__": ts = Test() print (ts.reverseInteger(123)) #輸出結果:321
2、使用棧的方式
class Test: def reverseInteger(self, number): number = str(number) # 模擬入棧 l = list(number) result = "" while len(l) > 0: result += l.pop() # 模擬出棧 return int(result) if __name__ == "__main__": ts = Test() print (ts.reverseInteger(123)) # 輸出結果:321
3、使用切片的方式
class Test: def reverseInteger(self, number): number=str(number) result=number[::-1] #python中切片的特殊用法 result=(int(result)) return result if __name__ == "__main__": ts = Test() print (ts.reverseInteger(123))
4、整數轉字符串,反轉字符串,然后再轉整數
class Test: def reverseInteger(self, x): plus_minus = "" reverse_x = "" if x < 0: plus_minus = "-" x = -x for i in str(x): reverse_x = i + reverse_x reverse_x = plus_minus + reverse_x if int(reverse_x) > pow(2, 31) - 1 or int(reverse_x) < pow(-2, 31): return 0 return int(reverse_x) if __name__ == "__main__": ts = Test() print (ts.reverseInteger(123)) #輸出結果:321
以上就是關于Python3如何實現個位數字和十位數字對調, 其乘積不變的內容,如果你們有學習到知識或者技能,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。