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

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

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

资源简介

(共28张PPT)
选择结构课堂小结
1.单分支if语句
if语句并列:需要判断多个不同条件时采用。
2.双分支if语句(if…else…)
判断条件只有两种结果(非黑即白)时采用。
3.if语句的嵌套
在满足一个条件的情况下还需要判断另一个条件是否满足时采用。
4.多分支if语句(if…elif…else…)
多个双分支if语句嵌套的简写,当出现多个条件(三个及以上),需要一一排查的时候采用。
1.计算1+2+3+4+5=?
2.计算1+2+3+4+5+……+100=?
3.打印出所有水仙花数。
print(1+2+3+4+5)
sum=0
i=1
sum=sum+i
i=2
sum=sum+i
i=3
sum=sum+i
i=4
sum=sum+i
i=5
sum=sum+i
print(sum)
i=100
a=i//100
b=i//10%10
c=i%10
if(a**3+b**3+c**3==i):
print(i)
i=101
a=i//100
b=i//10%10
c=i%10
if(a**3+b**3+c**3==i):
print(i)
……
4.4 运用循环结构描述问题求解过程
信息技术 数据与计算
循环是让计算机自动完成重复工作的常见方式。
for循环
while循环
循环嵌套
循环控制
4.4.1 for循环的应用
1.格式
for 循环变量 in 列表:
语句或语句组
缩进的代码表示for循环需要重复执行的代码。
for循环所包含的语句是以缩进为标志的。
4.4.1 for循环的应用
for i in [1,2,3,4,5]:
print(i)
print("中国加油")
for i in [1,2,3,4,5]:
print(i)
print("中国加油")
例1:
4.4.1 for循环的应用
sum=0
for i in [1,2,3,4,5]:
sum=sum+i
print(i,sum)
print(sum)
问题一:计算1+2+3+4+5=?
循环次数:
5次
sum=0
i=1
sum=sum+i
i=2
sum=sum+i
i=3
sum=sum+i
i=4
sum=sum+i
i=5
sum=sum+i
print(sum)
4.4.1 for循环的应用
3.使用range()函数
range(start,stop,step)
strat:开始的数,如果省略,默认为0
stop:结束的数+1
step:步长(两数之间的间隔),如果省略,默认为1
4.4.1 for循环的应用
例2:
for i in [1,2,3,4,5]
for i in range(6)
for i in range(1,10,2)
for i in [10,8,6,4,2]
for i in range(10,1,-2)
for i in [1,2,3,…100]
for i in range(1,101)
for i in [0,1,2,3,4,5]
for i in [1,3,5,7,9]
4.4.1 for循环的应用
sum=0
for i in range(1,101):
sum=sum+i
print(sum)
问题二:计算1+2+3+4+5+……+100=?
循环次数:
100次
4.4.1 for循环的应用
for i in range(100,1000,1):
a=i//100
b=i//10%10
c=i%10
if (a**3+b**3+c**3==i):
print(i)
问题三:打印出所有水仙花数。
循环次数:
900次
4.2020年12月8日,国家主席习近平同尼泊尔总统班达里互致信函,共同宣布珠穆朗玛峰高度为8848.86米(8848.86米=8848860毫米),假如我有一张足够大的纸,它的厚度是0.1毫米,请问,我折叠多少次,可以折叠成珠穆朗玛峰的高度?
循环次数是多少?
4.4.2 while循环的应用
1.格式
while (表达式):
语句或语句组
s=0.1
num=0
while(s<8848680):
num=num+1
s=s*2
print(num)
4.4.2 while循环的应用
问题四:折叠0.1mm厚的纸张多少次,可以折叠成珠穆朗玛峰的高度?
#纸的初始厚度
#折叠次数
#循环条件
#循环语句块
4.4.2 while循环的应用
问题四:折叠0.1mm厚的纸张多少次,可以折叠成珠穆朗玛峰的高度?
s=0.1
num=0
while(s<8848680):
num=num+1
s=s*2
print(num,s,sep=’ ’)
print(num)
i=0
sum=0
while(i<100):
i=i+1
sum=sum+i
print(i,sum)
问题二:用while循环计算1+2+3+4+5+……+100=?
i=0
sum=0
while(i<=100):
i=i+1
sum=sum+i
print(i,sum)
4.4.2 while循环的应用
问题三:用while循环打印出所有水仙花数。
4.4.2 while循环的应用
i=100
while(i<1000):
a=i//100
b=i//10%10
c=i%10
if(a**3+b**3+c**3==i):
print(i)
i+=1
5.今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?
6.《张邱建算经》中有一个“百鸡问题”:
“今有鸡翁一,值钱伍;鸡母一,值钱三;鸡雏三,值钱一。凡百钱买鸡百只,问鸡翁、母、雏各几何?”
4.4.3 循环嵌套的应用
如果某一种循环语句中包含着自身或其他循环语句,就称为循环的“嵌套”。
for 循环变量 in 列表:
(语句或语句组)
for 循环变量 in 列表:
语句或语句组
while (表达式):
(语句或语句组)
while (表达式):
语句或语句组
4.4.3 循环嵌套的应用
如果某一种循环语句中包含着自身或其他循环语句,就称为循环的“嵌套”。
for 循环变量 in 列表:
(语句或语句组)
while (表达式):
(语句或语句组)
while (表达式):
(语句或语句组)
for 循环变量 in 列表:
(语句或语句组)
问题五:用循环嵌套求解鸡兔同笼问题。
(用变量i表示鸡的数量,变量j表示兔的数量。)
4.4.3 循环嵌套的应用
for i in range(36):
for j in range(36):
if (i+j==35 and 2*i+4*j==94):
print('鸡:',i,',兔:',j)
循环次数:
36×36次
for j in range(24):
能不能使循环次数更少?
问题五:用循环嵌套求解百鸡问题。
(用变量i表示公鸡的数量,j表示母鸡的数量,k表示小鸡的数量。)
4.4.3 循环嵌套的应用
for i in range(1,101):
for j in range(1,101):
for k in range(1,101):
if(i+j+k==100 and 5*i+3*j+k*(1/3)==100):
print(i,j,k)
循环次数:
100×100×100次
7.某车棚存有自行车和三轮车共65辆,它们的轮子数合计为150个,求该棚内存有的自行车和三轮车各是多少辆。
8.输出最小的水仙花数。
9.输出100~150之间不含5的所有数字。
无论是for循环还是while循环都需要一个控制循环的变量来控制循环的执行。但有些循环仅靠循环自身的变化难以达到想要的控制效果,因此需要用到循环控制的跳转语句。
4.4.4 循环控制的应用
控制语句 作用
break 满足某个条件后中断循环,跳出整个循环
不再执行循环
continue 满足某个条件后跳出本次循环体的执行
继续执行下次循环
4.4.4 循环控制的应用
问题八:输出最小的水仙花数。
(当输出第一个数后,结束循环。)
for i in range(100,1000):
a=i//100
b=i//10%10
c=i%10
if(a**3+b**3+c**3==i):
print(i)
break
4.4.4 循环控制的应用
问题八:输出100~160之间不含5的所有数字。
(取出数字的每一位进行判断,如果是5则跳出本次循环,执行下一次循环。)
for i in range(100,160):
a=i//100
b=i//10%10
c=i%10
if(a==5 or b==5 or c==5):
continue
print(i)

展开更多......

收起↑

资源预览