判断素数的python程序的函数,判断素数的python程序的函数有哪些?

上节课我们已经学习了遍历循环、计数循环和条件循环。从循环结构开始,程序的难度明显变高了,需要多进行练习。这节课还有循环的三个知识点——break和continue语句以及循环的嵌套讲一下。最后再带大家熟悉一下顺序结构、分支结构循环结构的综合运用。

一、break语句

break语句用于循环体中,它的作用是退出当前的循环体。break语句用在循环体的分支结构中。我们看看break语句的逻辑结构:

判断素数的python程序的函数,判断素数的python程序的函数有哪些?

我们看一下具体的例子:

list_books = ["西游记", "红楼梦", "三国演义", "水浒传"]
for i in list_books:
    if i == '三国演义':
        break
    print(i, end=' ')

程序运行后打印出 西游记 红楼梦。三国演义满足if条件判断,循环结束。

二、continue语句

continue语句用于循环体中,它的作用是跳过当前循环,进入下一次循环。continue语句用在循环体中的分支结构中。我们看一下continue语句的逻辑结构:

判断素数的python程序的函数,判断素数的python程序的函数有哪些?

我们看一下具体的例子:

list_books = ["西游记", "红楼梦", "三国演义", "水浒传"]
for i in list_books:
    if i == '三国演义':
        continue
    print(i, end=' ')

这段代码与刚刚的很像,唯一不同的是break变成了continue。程序运行后打印出 西游记 红楼梦 水浒传。三国演义满足if条件判断,continue后面的代码不再执行,因此跳过print语句直接进入下一次循环。

三、循环的嵌套

循环结构的嵌套是指在循环结构的语句块中含有循环结构。嵌套循环中每一个循环都必须遵守缩进和英文冒号等格式要求,同一级别的循环必须在同一个缩进层次里面。

循环嵌套执行的次数 = 外层循环次数 × 内层循环次数。

我们看下面的代码:

for i in range(3):
    for j in range(3):
        print(i, j)

循环嵌套的代码,我们可以看成有行有列的表格,如下所示:

i \ j

0

1

2

0

0 0

0 1

0 2

1

1 0

1 1

1 2

2

2 0

2 1

2 2

四、循环结构的综合应用

随着我们学习了循环结构后,我们能够使用Python解决很多复杂的问题了,我们这里举几个比较常用的例子。

4.1 用户分多次输入,将用户输入的值存入列表中

用户依次输入每个学生的成绩,输入‘q’结束输入。最后再计算全班的平均分。

分析:

在书写代码前我们不知道班级的人数,无法确定循环的次数,只有使用无限循环,用户输入‘q’时使用break语句结束循环。

参考代码如下:

scores = []
while True:
    s = input("请输入分数,输入q结束输入:")
    if s == 'q':
        break
    s = float(s)
    scores.append(s)
avg = sum(scores) / len(scores)
print('平均分:', avg)

4.2 对列表中的值进行分类

一个列表中有很多数,我们要把奇数放到一起、把偶数放到一起。

分析:

我们对列表进行遍历,遍历到过程中判断这个数是奇数还是偶数,奇数放入一个列表中,偶数放入另一个列表中就可以了。

参考代码如下:

number = [34, 23, 35, 46, 21, 44, 82, 27, 16, 22, 97]
odd = []
even = []
for i in number:
    if i % 2 == 0:
        even.append(i)
    else:
        odd.append(i)
print('奇数:', odd)
print('偶数:', even)

4.3 数列的和或积的计算

前面我们讲计数循环时,已经提到了从1到100所有整数的和的计算了。遇到这种类型的问题,我们只需要先定义一个变量做累积计数用。累加时初始值为0,累乘时初始值为1。(0加任何数等于它本身、1乘任何数等于它本身。)我们看下面一个例子:

“!”是一种数学运算符,名字叫“阶乘”。一个正整数的阶乘的定义小于等于这个正整数的所有正整数的乘积。

1! = 1

2! = 2 × 1

3! = 3 × 2 × 1

……

输入一个正整数,计算它的阶乘。

参考代码如下:

n = int(input("请输入一个正整数:"))
f = 1
for i in range(1, n + 1):
    f *= i
print(n, "! =", f)

4.4 对可能的情况进行穷举

我们经常碰到一种情况,在一定范围内寻找满足一定条件的值。有用的留下来,没有用的舍弃。我们可以利用循环,对所有的可能性进行穷举,并在循环体中通过分支结构判断,将有用的留下来,没用的舍弃。我们看下面的例子:

找出能够能够被3整除,不能被7整除的三位数有多少个。

分析:三位数的范围是100到999,我们可以使用计数循环查找所有的三位数,并判断这个数是否满足条件。

参考代码如下:

n = 0 # 统计个数用的变量
for i in range(100, 1000):
    if i % 3 == 0 and i % 7 != 0:
        n += 1
print(n)

循环的用途还有很多,我们遇到问题时,可以按照上面的思路自己开动脑筋。

到这节课为止,Python的基本数据类型和程序的结构都已经讲完了。从下节课开始,我们会接触一个非常有意思的知识:使用Python画画。

五、课后思考题

1、编程题

下面是几位同学的语文、数学、英语的期末成绩,请你写一段代码,分别求出这些同学各个学科的平均分,最高分,最低分,并且计算出来每位同学的总成绩。

[(98,97,96), (79,98,97), (90,96,97), (99,90,92), (93,98,91), (98,99,97), (89,95,87), (97,67,89)]

2、编程题

一个正整数只能被1和它本身整除,这个数被称为质数。打印出2到100之间所有的质数。

3、编程题

输入两个数,计算这两个数之间(包含这两个数)所有不能被3整除的数的和。

六、上节课思考题答案

1、D (复习一下print()函数的“小尾巴”的内容)

2、D (其他的循环次数都是10次,D选项循环次数是11次)

3、参考代码:

n = 0
for i in range(3, 91, 3):
    n += i
print(n)

4、参考代码:

list1 = [14, 12, 64, 23, 55, 13, 34]
n = 0
for i in list1:
    n += i
print(n)
本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 sumchina520@foxmail.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.dasum.com/231768.html