3.2.4 循环结构的程序实现 课件(共23张PPT)2023—2024学年高中信息技术浙教版(2019)必修1

资源下载
  1. 二一教育资源

3.2.4 循环结构的程序实现 课件(共23张PPT)2023—2024学年高中信息技术浙教版(2019)必修1

资源简介

(共23张PPT)
说说你最爱的动漫
循环结构
完成重复的工作
3.2 Python语言程序设计
3.2.4 循环结构的程序实现(1)
循环结构---for循环(次数循环)
for <变量> in <序列>:
<循环体>
for 语句的格式为:
序列一般有:字符串、列表、字典、range()
for语句通过遍历序列中的元素实现循环,并通过序列的元素数量来控制循环次数。
即循环过程中,序列中的每个元素都会依次被赋值给变量,并分别执行一次循环体。
课堂活动1——画一个正三角形
import turtle #导入绘图用模块
t=turtle.Pen()
for i in range(3): #重复执行3遍
t.forward(100) #向前绘制长度为100的线段
t.left(120) #向左旋转120度
turtle.done() #停止画笔绘制
Turtle 绘制图像的函数库
t=turtle.Pen() 笔开始的地方
默认的方向:向右
t.forward(a) 向前绘制长度a的线段
t.left(n) 向左旋转n度
turtle.done() 停止画笔绘制
你能改一下代码,画一个正方形吗?
内角60
120度
循环结构——重要的range函数
若序列中的元素为有序整数,则可利用内建函数range来实现。
str =“123456”
lis = [2,4,6,8,10]
range(起始值,终值+1,步长值)
若起始值为0,可省略;若步长值为1,也可省略。
课堂活动2——画一个正N边形
import turtle
n=int(input("请输入正多边形的边数:")) #输入边数赋值给n,值只能是整数
a=int(input("请输入边长a:")) #输入边长赋值给a,值只能是整数
d=(n-2)*180/n
t=turtle.Pen()
for i in range(_______): #重复执行_______遍
t.forward(_______) #向前绘制长度为a的线段
t.left(_______) #向左旋转_______度
turtle.done() #停止画笔绘制
【隐藏技能】【添加背景色】
在循环for语句的绘制之前,添加语句
t.begin_fill() #开始填充
t.fillcolor(‘red’) #填充红色
for i in range(3):
#绘制语句
t.end_fill() #结束填充
n
n
a
180-d
180-d
课堂活动3——统计同学最爱的动画
每个人喜欢的都不相同,请你利用python统计周围的同学喜欢哪些动漫吧。
①、输入人数(重复次数);
②、判断次数是否已经到了,
次数未到执行③,
次数到了执行④;
③、输入姓名、喜欢的动漫,
执行②;
④、输出相应的姓名和动漫。
课堂活动3——弹力球的轨迹
一小球从100米高度自由落下,与地面碰撞时能量损失一半。假设小球每次与地面碰撞后反弹回到原来一半的高度(小球在运动过程中视为质点,且不计空气阻力),则经过5次落地共经过了287.5米。
编写Python 程序,绘制小球从m米高处落下,在n次地面碰撞后经过的总路程。
编写Python 程序,实现计算小球从m米高处落下,在n次地面碰撞后经过的总路程。
import turtle
m = float(input("输入起始高度:"))
n = int(input("输入回弹次数:"))
t = turtle.Pen()
for i in range(1,n+1):
if i ==1:
t.left(270)
t.forward(m)
else:
m/=2
t.left(90)
t.forward(5)
t.left(90)
t.forward(m)
t.right(90)
t.forward(5)
t.right(90)
t.forward(m)
课堂活动3——弹力球的轨迹
一小球从100米高度自由落下,与地面碰撞时能量损失一半。假设小球每次与地面碰撞后反弹回到原来一半的高度(小球在运动过程中视为质点,且不计空气阻力),则经过5次落地共经过了287.5米。
编写Python 程序,绘制小球从m米高处落下,在n次地面碰撞的运动轨迹。
课堂活动3——弹力球的轨迹
一小球从100米高度自由落下,与地面碰撞时能量损失一半。假设小球每次与地面碰撞后反弹回到原来一半的高度(小球在运动过程中视为质点,且不计空气阻力),则经过5次落地共经过了287.5米。
编写Python 程序,绘制小球从m米高处落下,在n次地面碰撞的运动轨迹。
编写Python 程序,实现计算小球从m米高处落下,在n次地面碰撞后经过的总路程。
import turtle
m = float(input("输入起始高度:"))
n = int(input("输入回弹次数:"))
t = turtle.Pen()
for i in range(1,n+1):
if i ==1:
t.left(270)
t.forward(m)
else:
m/=2
t.left(180)
t.forward(m)
t.left(180)
t.forward(m)
height=0
m=float(input("输入起始高度:"))
n=int(input("输入次数:"))
for i in range(1,n+1):
if i==1:
height+=m
else:
_________
m/=2
print("总路程:"+str(height))
课堂活动3——弹力球的轨迹
一小球从100米高度自由落下,与地面碰撞时能量损失一半。假设小球每次与地面碰撞后反弹回到原来一半的高度(小球在运动过程中视为质点,且不计空气阻力),则经过5次落地共经过了287.5米。
编写Python 程序,绘制小球从m米高处落下,在n次地面碰撞的运动轨迹。
编写Python 程序,实现计算小球从m米高处落下,在n次地面碰撞后经过的总路程。
height=0
m=float(input("输入起始高度:"))
n=int(input("输入次数:"))
for i in range(1,n):
if i==1:
height+=m
else:

m/=2
print("总路程:"+str(height))
3.2 Python语言程序设计
3.2.4 循环结构的程序实现(2)
课堂活动3——统计同学最爱的动画
每个人喜欢的都不相同,请你利用python统计周围的同学喜欢哪些动漫吧。
①、输入人数(重复次数);
②、判断次数是否已经到了,
次数未到执行③,
次数到了执行④;
③、输入姓名、喜欢的动漫,
执行②;
④、输出相应的姓名和动漫。
循环结构——while循环(条件循环)
s=s*3执行10遍,s的结果是(s初始值为1)?python代码如何写?
s=1
for i in range(10):
s=s*3
print(s)
s=1
i=1
while i<=10:
s=s*3
i=i+1
print(s)
while循环的格式:
while <条件>:
<循环体>
循环结构对比——找不同
s=1
for i in range(10):
s=s*3
print(s)
s=1
i=1
while i<=10:
s=s*3
i=i+1
print(s)
变量i在循环之前必须赋初值
i+=1去掉会发生什么?
否则无法进行比较
陷入死循环
While 循环中要添加语句,保证判断语句有为false的情况
小结
s=1
for i in range(10):
s=s*3
print(s)
s=1
i=1
while i<=10:
s=s*3
i=i+1
print(s)
for循环 while循环
别称 次数循环 条件循环
执行次数的决定因素 序列元素 判断条件和累加器
是否需要赋初值 不需要 需要
是否会陷入死循环 不会 会
上面代码结束时,i的值 10 11
while后有条件,所以称为条件循环,但此任务循环体执行次数一定,所以也可以改造为次数循环(for)
课堂活动3——统计同学最爱的动画
每个人喜欢的都不相同,请你利用python统计周围的同学喜欢哪些动漫吧。
①、输入人数(重复次数);
②、判断次数是否已经到了,
次数未到执行③,
次数到了执行④;
③、输入姓名、喜欢的动漫,
执行②;
④、输出相应的姓名和动漫。
循环结构的退出
s=0
for i in range(1,6):
x=int(input('x:'))
if x<0:
continue
s=s+x
print(s)
下列说法正确的是( )
A.当x<0时,循环结束
B.如果输入5个负数,则print(s)语句永远不会被执行
C.本程序的功能是输出5个数中的非负数之和
D.当x<0时,也会执行代码s=s+x
break
* 某一条件满足的时候,退出循环,不再执行后续重复的代码
continue
* 某一条件满足的时候,不执行后续代码
* 直接跳到循环头,继续执行代码
课堂练习
课堂练习
课堂活动---猜猜“芯”里的数
1、电脑随机生成1~100内的整数;
2、用户开始猜数;
3、比较数字大小;
4、直到猜对为止。
课堂练习
奇偶校验是一种校验数据传输正确性的方法。其中奇校验方法为:统计二进制数据数位中“1”的个数,若个数为奇数,则校验位值为0,否则校验位值为1。小李编写了一个计算奇校验位值的Python程序,功能如下:输入1~255十进制待校验数,显示该数对应的二进制值,并显示该数的校验位值。程序运行界面如图所示。
如果输入要验证的数是153,则对应的二进制值为 ______ ,其校验位值是 ______ 。
实现上述功能的python程序如下,请在画线处填入合适代码。
感谢一路有你

展开更多......

收起↑

资源预览