admin管理员组

文章数量:1794759

Python趣味案例

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种组合方法

本文标签: 趣味案例Python