最新消息:

Python:循环与嵌套循环实现规律数列

Python 少儿编程 1593浏览 0评论

 

简   介

这里     使用循环来现实数列的输出以及嵌套循环来实现数的分解

 

 

Python:循环与嵌套循环实现规律数列

     01 八卦几句

Python:循环与嵌套循环实现规律数列

        一直秉承的理念是工具是用来解决问题,要为了解决问题而去学习和使用工具,而不应该是为了学习工具而去学习工具,然后再去探求工具可以用来干什么。前一段时间,学习了有规律的数列,比如1、3、5、7、9或者两个有规律的数列穿插在一起,比如1、5、3、10、5、15、7、20等,还学习了把一个数差分成两个数、拆分成三个数或者更多个。因此,引导了小朋友使用Python来对这两种问题进行实现。

 

在数列的程序实现上,从简单的数列开始实现基础的程序,然后再基础的程序上进行修改来实现包含两个数列交叉的数列。要实现的单个数列是3、5、7、9、11,要实现的两个交叉的数列是3、5、5、10、7、15、9、20、11、25。

嵌套循环来实现数的分解要实现的是把10分解成两个数。

 

Python:循环与嵌套循环实现规律数列 

     02 程序实现

Python:循环与嵌套循环实现规律数列

Python:循环与嵌套循环实现规律数列
1F
包含单个数列的数列

        单个数列的实现比较简单,只需要确定好步长,使用while循环实现即可。

程序代码:
i=3
while i<12:
    print(i)
    i=i+2

程序输出:    
3
5
7
9
11

Python:循环与嵌套循环实现规律数列
2F
包含两个数列的数列

        既然是两个数列,则需要两个变量分别和一个数列相对应。小朋友在找到规律之后最开始实现的是使用了两个while循环把两个数列分别输出。

#程序代码:
i=3
j=5
while i<12:
    print(i)
    i=i+2
while j<26:
    print(j)
    j=j+5

#程序输出:
3
5
7
9
11
5
10
15
20
25

        可以看出的是,这两组数列是分别输出,而不是交叉输出。引导小朋友可以把这个数列进行分组,即变成:3、55、107、159、2011、25。也就是可以使用一个while循环,在这一个while循环中把i和j两个变量进行增加。

#程序代码i=3
j=5
while i<12:
    print(i)
    print(j)
    i=i+2
    j=j+5

#程序输出3
5
5
10
7
15
9
20
11
25

Python:循环与嵌套循环实现规律数列
3F
10的分解

        如果要把10分解成两个数,对于机器而言,最简单粗暴的方法就是穷举法,然后判断结果是否满足条件。既然是分解成两个数,那么就需要两个变量i和j。i和j的变化区间都是1到10,使用嵌套循环来实现,即外层循环是i,从1到10,内层循环j也是从1到10。也就是i等于1时候,j从1到10;i等于2的时候j从1到10;i等于3的时候,j从1到10;一直到i等于10的时候,j从1到10。

其实,理论上i和j不必到10,到9就可以了。但是为了编程简化处理,就直接给设置到10了,反正有判断步骤保证不会有错误的结果输出。

#程序代码TargetNo=10
i=1
while i<TargetNo:
    j=1
    while j<TargetNo:
        if i+j==TargetNo:
            print(i,j,i+j)
        j=j+1
    i=i+1

#程序输出1 9 10
2 8 10
3 7 10
4 6 10
5 5 10
6 4 10
7 3 10
8 2 10
9 1 10

不过上面这个程序仍然有改进的空间,因为这个程序会把有的分类输出两次,比如i等于1,j等于9,与i等于9,j等于1都会各输出一次。

您必须 登录 才能发表评论!