Python第一例 —— 从四个数中取出三个数组成互不相同且无重复的三位数


这里是一段防爬虫文本,请读者忽略。
本文原创首发于CSDN,作者IDYS
博客首页:https://blog.csdn.net/weixin_41633902/
本文链接:https://blog.csdn.net/weixin_41633902/article/details/107423747
未经授权,禁止转载!恶意转载,后果自负!尊重原创,远离剽窃!


写在开头的话

  • 请记住:实践是掌握知识的最快方法
  • 如果你只是怀着看看的态度去快速浏览文章,而不去认认真真的把文章里面讲的任何一个知识点去实践一遍,那么你永远也掌握不了它
  • 生命不息,折腾不止!

Python例题:第一例 —— 从四个数中取出三个数组成互不相同且无重复的三位数

01. 题目

  • 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?

  • 我的解析思路:
  1. 首先从四个数字当中任意取一个数字,放入百位
  2. 从四个数字当中取出一个数字,判断该数字和百位的数字是否相同,相同则跳过往下选,不同则选择该数字填入十位
  3. 从四个数字从取一个数字,判断该数字和百位或者十位的数字是否相同,相同则跳过往下选,不同则将该数字填入个位数

02. 我的程序

  • 代码
def noRepeat():
    list = [1,2,3,4]
    i=0 #百位
    j=0 #十位
    k=0 # 个位
    count=0 #计数器,用于统计总共有多少个数字
    while(i<4): #分别将1到4个数字填入百位
        j=0
        while(j<4):
            if(j == i): # 判断十位数字是否和百位相等,相等则跳过往下选,不等则打印输出
                j+=1
            else:
                k=0
                while(k<4):
                    if(k == j or k == i): #判断个位数字是否和百位和十位相等,相等往下选,不等则打印
                        k+=1
                    else:
                        print(list[i],list[j],list[k])
                        k+=1
                        count+=1  # 使用计数器技术
                j+=1
        i+=1
    else:
        print(count)

if __name__ == '__main__':
    noRepeat()
  • 输出结果
1 2 3
1 2 4
1 3 2
1 3 4
1 4 2
1 4 3
2 1 3
2 1 4
2 3 1
2 3 4
2 4 1
2 4 3
3 1 2
3 1 4
3 2 1
3 2 4
3 4 1
3 4 2
4 1 2
4 1 3
4 2 1
4 2 3
4 3 1
4 3 2
24

写在最后的话:

  • 无论每个知识点的难易程度如何,我都会尽力将它描绘得足够细致
  • 欢迎关注我的CSDN博客,IDYS’BLOG
  • 持续更新内容
    linux基础 | 数据通信(路由交换,WLAN) | Python基础 | 云计算
  • 如果你有什么疑问,或者是难题。欢迎评论或者私信我。你若留言,我必回复!
  • 虽然我现在还很渺小,但我会做好每一篇内容。谢谢关注!

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值