温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python趣味案例之不重复的三位数

发布时间:2020-03-01 00:11:07 来源:网络 阅读:428 作者:丁香花下 栏目:编程语言

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

       

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI