您好,登錄后才能下訂單哦!
????????????????????????????????Python趣味案例之不重復的三位數
一、問題描述
0~9組成一個三位數,并且這三位數中沒有相等的數字,一共有多少種組合方法?
二、思路
利用0~9組成沒有重復數字的三位數
百位組成 1~9
十位組成 0~9
個位組成 0~9
利用循環窮舉百位、十位、個位的數字構成,只有三個數不相同的時候才生成不重復的數字
三、代碼
方法一
def?count(a?=?10,b?=?10,c?=?10): ????num?=?0??#?初始化組合方法 ????for?a1?in?range(1,a):?#?百位構成1~10 ????????for?b1?in?range(0,b):??#?十位構成0~10 ????????????for?c1?in?range(0,c):?#?個位構成0~10 ????????????????if?a1?!=?b1?and?a1?!=?c1?and?b1?!=?c1:??#?當三個數不相等時,組合方法+1 ????????????????????num?+=?1 ????print(num) count()?#?648?一共648種組合方法
方法二
def?count1(a?=?10,b?=?10,c?=?10):???????????????????????????????????? ????num??=?0????????????????????????????????????????????????????????? ????for?a1?in?range(1,a):???????????????????????????????????????????? ????????for?b1?in?range(0,b):???????????????????????????????????????? ????????????if?a1?==?b1:??#?如果a1?==?b1,則跳過該次循環??????????????????????????????????????????? ????????????????continue????????????????????????????????????????????? ????????????for?c1?in?range(0,c):???????????????????????????????????? ????????????????if?a1?!=?c1?and?b1?!=?c1:???#?a1?!=?c1?and?b1?!=?c1時,組合方法+1??????????????????? ????????????????????num?+=?1????????????????????????????????????????? ????print(num)??????????????????????????????????????????????????????? count1()???#??648?一共648種組合方法
? ? ? ?
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。