4.4运用循环结构描述问题求解过程课件(共54张PPT) 2023—2024学年高中信息技术粤教版(2019)必修1

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

4.4运用循环结构描述问题求解过程课件(共54张PPT) 2023—2024学年高中信息技术粤教版(2019)必修1

资源简介

(共54张PPT)
1.输入语句 <变量>=int/float( input() )
2.将 赋给变量
3.输出语句
复习 -顺序结构
变量=值
print( )
(1)将字符串“祖国”赋给变量a;
(2)将字符串“万岁”赋给变量b;
(3)将a+b的值赋给变量c;
(4)将len(c)赋给变量s;
(5)使用输出语句在屏幕上输出s的值。
复习 -顺序结构
a=” 祖国 ”
b=” 万岁 ”
c=a+b
s=len(c)
变量=值
print( s )
if :
print( )
else:
print( )
题目:如果 ,则输出 ,否则输出
复习 -双选择结构
练习
<1>
<2>
<3>
4.1程序设计语言的基础知识
4.2运用顺序结构描述问题求解过程
4.3运用选择结构描述问题求解过程
4.4运用循环结构描述问题求解过程
第四章 程序设计基础
操场跑道
电风扇扇叶
地球自转
生活中的循环
软件开发中循环的使用场景
跟朋友承认错误,说一万遍“对不起,我错了!”
print (“对不起,我错了!”)
print (“对不起,我错了!”)
print (“对不起,我错了!”)
…(还有9997遍)…
使用循环,一句话搞定
for i in range(1,10001):
print (“对不起,我错了!”)
4.4.1for循环的应用
4.4.2while循环的应用
4.4.3循环嵌套的应用
4.4.4循环控制的应用
4.4运用循环结构描述问题求解过程
循环结构是程序设计中常用的基本结构之一。循环是让计算机自动完成重复工作的常见方式。
1.For循环的应用
for语句的一般格式:
for 循环变量 in 列表 :
语句或者语句组
注意:
1.冒号
2.冒号之后缩进的是循环体(重复执行部分)
列表的几种表达方式:
(1)直接罗列
(2)先定义后使用
(3)使用range()函数
是否缩进 循环体示例
代码示例结果
有缩进 for value in [1,2,3,4,5]: print(value) print('good')
无缩进 for value in [1,2,3,4,5]: print(value) print('good')
1
good
2
good
3
good
4
good
5
good
1
2
3
4
5
good
列表的几种表达方式
循环体先定义后使用示例代码
运行结果
values= [1,2,3,4,5] for value in values : print(value) print('good')
(1)直接罗列的方式
(2)先定义、后使用
直接罗列方式示例代码 运行结果
for value in [1,2,3,4,5]: print(value)
1
2
3
4
5
1
2
3
4
5
good
3.使用range( )函数表达列表
range(初值,终值,步长 )
初值:
第一个数
省略默为0
终值:
最后一个数
不包含终值
终值+1
步长:
对象间隔
省略默为1
range(1,5,1) ==[1,2,3,4]
循环体示例
代码示例结果
range(初值,终值,步长 ) for i in range (1,6,1): print(i)
range(初值,终值 ) 步长省略默认1 for i in range (1,6): print(i) range(终值 ) 初值省略默认0 步长省略默认1 for i in range (6): print( i ) 1
2
3
4
5
使用range()函数
是否缩进 循环体示例
代码示例结果
for value in range (2,11,2): print(value)
数值列表是可以降序的,可以为负值 for value in range (10,1,-2): print(value)
4
6
8
10
10
8
6
4
2
连一连
range(1,6)
range(1,5,2)
range(6,0,-2)
1
2
3
4
5
1
3
6
4
2
range(4)
0
1
2
3
6
4
2
0
1
3
5
0
1
2
3
4







range()练习
列表 range(初值,终值,步长)
[1,2,3,4,5,6,7]
[1,3,5,7,9]
[0,2,4,6,8,10]
1-100以内所有偶数
1-30以内所有能被3整除的数
range(1,8,1)
range(1,10,2)
range(0,11,2)
range(1,101,2)
range(1,31,3)
range()练习
range(初值,终值,步长) 列表
range(2,13,5)
range(4,11)
range(15)
range(3,10,3)
range(9,37,9)
[2,7,12]
[4,5,6,7,8,9,10]
0,1,2,3.....14
[3,6,9]
[9,18,27,36]
1.for循环结构应用
从0开始输出,连续输出10个数,每个数中间有个空格
for i in range(0,9):
print(i,end=" ")
程序
0 1 2 3 4 5 6 7 8
运行结果
for i in range(0,10):
print(i)
0
1
2
3
4
5
6
7
8
9
用for循环解决累加问题
例:1+2+3+……+6
s=0
for i in range(1,7):
s =s +i
print(s)
会考10分题
用for循环解决累积问题
如何用for循环语句编程解决1*2*3*……*6*7*8*9*10
s=1
for i in range(1,11):
s =s *i
print(s)
会考10分题
用for循环解决个数问题
1-100所有偶数的个数
s=0
for i in range(1,101,2):
s =s +1
print(s)
会考10分题
循环结构
求加
s=0
for i in range():
s =s +i
print(s)
求积
s=1
for i in range():
s =s *i
print(s)
求个数
s=0
for i in range():
s =s +1
print(s)
会考10分题
会考10分题--练习
s= 0
for i in range ( 60 ,100,3 ) :
s=s + i
print( ”60-100能被3整除的数的和为:” , s )
<3>
<2>
<1>
求60-100能被3整除的数的和
在<1>、<2>、<3>处填入正确代码。其他代码不要修改
会考10分题--练习
s= 1
for i in range ( 2 ,19,2 ) :
s=s * i
print( ”2-19所有偶数的积为:” , s )
<3>
<2>
<1>
求2-19所有偶数的积
在<1>、<2>、<3>处填入正确代码。其他代码不要修改
会考10分题--练习
s= 0
for i in range ( 1,50,2 ) :
s=s +1
print( ”1-50所有奇数的个数:” , s )
<3>
<2>
<1>
求1-50所有奇数的个数
在<1>、<2>、<3>处填入正确代码。其他代码不要修改
会考10分题- 特殊题型
计算并输出2×4×8....×20的值
p= 1
for i in range(2 , 21 , 2) :
p=p * i
print("2×4×8....×20=", s)
<3>
<2>
<1>
会考10分题- 特殊题型
计算并输出1+1/3+1/5 +…1/29的值,结果保留一位小数
s=0
for i in range(1,30,2) :
s=s+ 1/i
print("计算结果是:", round(s,1) )
<3>
<2>
<1>
会考10分题- 特殊题型
计算并输出1×2+2×3+3×4+4×5的值
s= 0
for i in range(1,5) :
s=s+ i*(i+1)
print("它们的和是:", s)
<3>
<2>
<1>
会考10分题- 特殊题型
#计算并输出12+22+32+42的值
s= 0
for i in range(1,5):
s=s+i**2
print("它们的和是:",s)
<3>
<2>
<1>
i*i
会考10分题
输出以下内容:
第1行:1x2=2第2行:2x4=8第3行:3x6=18第4行:4x8=32
for i in range ( 1 , 5 ) :
print(“第”, i , ”行:” , end=’’)
print(i , ”x” , i*2 , “=” , i*i*2 )
<3>
<2>
<1>
会考10分题
输出以下内容:
第1行:1x10=10
第2行:2x10=20
第3行:3x10=30
第4行:4x10=40
for i in range ( 1 , 5 ) :
print(“第”, i , ”行:” , end=’’)
print(i , ”x” , 10 , “=” , i*10 )
<3>
<2>
<1>
会考10分题
输出以下内容:
第1行:9x1=9
第2行:8x2=16
第3行:7x3=21
第4行:6x4=24
for i in range ( 1 , 5 ) :
print(“第”, i , ”行:” , end=’’)
print( 10-i , ”x” , i , “=” , (10-i)*i )
<3>
<2>
<1>
会考10分题
输出以下内容:
第1行:4÷1=4
第2行:5÷2=2.5
第3行:6÷3=2
第4行:7÷4=1.75
for i in range ( 1 , 5 ) :
print(“第”, i , ”行:” , end=’’)
print( i +3 , ”÷” , i , “=” , (i+3)/i )
<3>
<2>
<1>
阅读程序,写出运行结果:
s=0
for i in range(1,10,4):
print ("#")
s=s+iprint (s)
上述程序运行后,输出“#”的个数是____;输出s的值是 。
3
15
程序阅读题:执行下列程序后的结果是( )
s=0
for i in range(1,5):
i=i+2
s=s+i
print(s)
A.3 B. 8 C. 18 D.10
C
2.While循环的应用
While循环语句的格式
当型循环格式:
while (表达式) :
语句或语句组
1.表达式一般是一个关系表达式或者一个逻辑表达式,表达式的值是一个逻辑值,“真”或者“假”
2.当表达式值为真时,执行循环体语句;当表达式值为假时,退出循环体,执行循环体外的下一条语句
3.每次循环都是执行完循环体语句后回到表达式处重新开始判断,重新计算表达式的值
问题
项目小组为了筹集购买奖品和纪念品的费用,准备开展一次募捐活动,计划向第一个赞助人募集20元,向第二个赞助人募集25元…后一个比前一个多募捐5元,依次下次,第几个人募捐后募集到的总费用累计超过500元?
如何用while循环语句编程解决上述的募集费用计算问题
分析问题
设所拉赞助人的数量为num,每次募集的费用为money,每次募集之后总费用为sum,则sum可以用如下式子 表示:
sum=20+25+30+…
问题转化:当sum>=500时,求num的值
设计算法 编写程序
1.令num=1
2.令money=20
3.令sum=20
4.num=num+1
5.money=money+5
6.sum=sum+money
7.如果sum<500,
则返回步骤4
8.输出num的值
9.结束
num=1
money=20
sum=20
while sum<500:
num=num+1
money=money+5
sum=sum+money
print(num)
当循环练习
1.在Python语言中,运行以下代码后,变量i的值是( )
A 6
B 5
C 0
D 1
D
当循环练习
2.在Python语言中,运行以下代码后,变量i的值是( )
A 0
B 6
C 3
D 9
D
小试牛刀
如何打印输出100以内的偶数呢?
3.while循环结构
利用while语句求1-100的数的和
s=0
i=1
while i<=100:
s=s+i
i+=1
print(s)
While语句
s=0
for i in range(1,101):
s=s+i
print(s)
For语句
3.循环嵌套的应用
循环嵌套
如需要解决类似“工作要做很多遍,而每一遍工作都是需要重复做一些事情”的问题,就需要用到多重循环,即“循环嵌套”。
如果某一种循环语句中包含着自身或其他循环语句,就称为循环的“嵌套”
利用循环嵌套输出9*9乘法表
for i in range(1,10):
for j in range(1,10):
sum=i*j
print(i,'*',j,'=',sum)
4.循环控制的应用
Break语句和continue语句
在循环结构中,可以用break语句跳出循环体,从而中断当前的循环。
continue语句是对break语句的补充。continue不是立即跳出循环体,而是当条件符合需要跳转的时候,跳过该次循环语句,回到循环开头的条件测试部分,重新开始执行循环。
循环控制
有什么不同?
运行结果:
运行结果:
总结
循环结构
求加
s=0
for i in range():
s =s +i
print(s)
求积
s=1
for i in range():
s =s *i
print(s)
求个数
s=0
for i in range():
s =s +1
print(s)
会考10分题
总结
2.while循环语句格式
while (表达式):
语句或语句组
3.break语句: 跳出循环体
continue语句:跳过该次循环语句

展开更多......

收起↑

资源预览