经典python 100例题001 python3.x版

题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。

参考程序:

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)

运行结果在文末
显而易见,通过for循环此题变得异常简单,同时python2和python3的变化并不多。通过本程序你应该知道python中的循环语句,以及相应的嵌套。
在python中还有一种循环结构是while循环,while循环相对for循环来说,过程比较繁琐,本题也能通过while循环求解。

练习:输入两个正整数,得到最大公约数和最小公倍数。

x=int(input('x='))
y=int(input('y='))
p=x*y
while x%y!=0:
    print(x%y)
    x,y=y,x%y
print(y,p//y)

谈到循环,就不得提起break,continue语句。很好区分,break终结者,而continue有意放过你一马,如果你正想当一个混子就使用pass,pass是一个空语句,没有实际意义,只为了“放水”。
题目结果:

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
发布了19 篇原创文章 · 获赞 2 · 访问量 1090

猜你喜欢

转载自blog.csdn.net/qq_42692319/article/details/103848454
今日推荐