Bootstrap

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

1. 思路

        使用嵌套循环实现,第一层循环取百位数字,第二层循环取十位数字,第三层循环取个位数字,判断三个位置的数字是否互不相同且无重复。1,2,3,4可以组成24个互不相同且无重复的三位数,如下所示:123, 124, 132, 134, 142, 143, 213, 214, 231, 234, 241, 243, 312, 314, 321, 324, 341, 342, 412, 413, 421, 423, 431, 432

2. for循环实现(嵌套循环)

# 列表存放组成的三位数
num_list = []
# 百位数字
for i in range(1, 5):
    # 十位数字
    for j in range(1, 5):
        # 个位数字
        for k in range(1, 5):
            # 三个位置上的数字各不相同
            if i != j and j != k and i != k:
                # total为组成符合要求的三位数
                total = i * 100 + j * 10 + k
                # 添加到列表中
                num_list.append(total)
print(f'1,2,3,4可以组成{len(num_list)}个互不相同且无重复的三位数,如下所示:')
print(num_list)


# 列表存放组成的三位数
num_list = []
# 百位数字
for i in range(1, 5):
    # 十位数字
    for j in range(1, 5):
        # 个位数字
        for k in range(1, 5):
            # total为组成的三位数
            total = i * 100 + j * 10 + k
            # 添加到列表中
            num_list.append(total)
print(f'1,2,3,4可以组成{len(num_list)}个三位数,如下所示:')
print(num_list)

2ae93c40f1034f7b8c6b03b6b4df9a79.png

 

;