有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
1.首先先写出用1,2,3,4 能组成多少个三位数。
for i in range (1,5):
for j in range (1,5):
for k in range(1,5):
print(i,j,k)
>>>1 1 1
1 1 2,1 1 3,1 1 4,1 2 1,1 2 2,1 2 3,1 2 4,1 3 1,1 3 2,1 3 3,1 3 4,1 4 1,1 4 2,1 4 3,1 4 4,2 1 1,2 1 2,2 1 3,2 1 4,2 2 1,2 2 2,2 2 3,2 2 4,2 3 1,2 3 2,2 3 3,2 3 4,2 4 1,2 4 2,2 4 3,2 4 4,3 1 1,3 1 2,3 1 3,3 1 4,3 2 1,3 2 2,3 2 3,3 2 4,3 3 1,3 3 2,3 3 3,3 3 4,3 4 1,3 4 2,3 4 3,3 4 4,4 1 1,4 1 2,4 1 3,4 1 4,4 2 1,4 2 2,4 2 3,4 2 4,4 3 1,4 3 2,4 3 3,4 3 4,4 4 1,4 4 2,4 4 3,4 4 4
2.上面的数字看起来不太好看,把代码优化一下,让打印出来的数字符合平时写出来的一样,像111,112等。
for i in range (100,500,100):
for j in range (10,50,10):
for k in range(1,5):
print(i+j+k\n)
3.把有重复性数字的三位数找出来,这就用到了if条件判断语句。
for i in range (1,5):
for j in range(1,5):
for k in range(1,5):
if (i!=j) and (i!=k) and(j!=k):
print(i,j,k)
4.最终打印出来
for i in range (100, 500, 100):
for j in range (10, 50, 10):
for k in range (1, 5):
if (i/100 != k) and (i/100 != j/10)and (j/10 != k):
print(i +j + k)
>>>
123
124
132
134
142
143
213
214
231
234
241
243
312
314
321
324
341
342
412
413
421
423
431
432