(共20张PPT)
第2单元 编程计算
第1单元 初识数据与计算
第3单元 认识数据
第4单元 计算与问题解决
第5单元 数据分析与人工智能
信息技术
(必修1)
2.3 周而复始的循环
了解循环的基本结构
学会计数循环的使用方法
学会条件循环的使用方法
熟练使用循环解决实际问题
1
3
4
2
学习目标
你不理财,财不理你
你知道哪些理财方法呢?
基金、股票、债券……
存银行
课程导入
小明爸爸有5万元积蓄存入银行,考虑到在存续期间可能会有其他用途,因此他选择了1年定期,自动转存的方式。5年后他会有多少收益呢?
问题:
计算收益
计算利率不变情况下到期存款总额
如果小明爸爸选择1年定期自动转存,假设5年内存款利率没有发生变化均为3.25%,5年后到期存款总额是多少?
计算5年储蓄存款收益
本金*(1+利率)存款期限
计算利率变动情况下到期存款总额
如果小明爸爸首次存款利率是3.25%,自动转存时利率分别是3%、3%、2%、1.75%,那么5年后到期存款总额是多少?
计算5年储蓄存款收益
分析每年的存款变化,从中寻找规律。
第1年 存款=本金*(1+第1年利率)
第2年 存款=上一年存款*(1+第2年利率)
第3年 存款=上一年存款*(1+第3年利率)
......
第n年 存款=
你发现其中规律了吗?
rate=[0.0325,0.03,0.03,0.02,0.0175]
object=[“石榴”,1,“香蕉”,“橙子”,“梨子”]
print (object)
[“石榴”,1,“香蕉”,“橙子”,“梨子”]
格式:列表名=[元素1,元素2,元素3……]
列表中可以包含多个元素,同时它是一个有序的集合。
列表
#各元素用逗号隔开,放在方括号[ ]内
#列表可存储混合类型的数据(整数、字符串、列表等)
列表操作
object=["石榴",1,"香蕉","橙子"]#创建列表
object[0]="苹果"#修改列表第1个元素的值,注意列表索引号从0开始
del object[1] 或 object.remove ( 1 ) #删除列表第2个元素
object. append("猕猴桃")#在列表尾部添加一个数据元素”弥猴桃"
object.insert(2, “火龙果”) #插入元素
object.reverse( ) #列表逆序
object.sort( ) #列表排序
print (object) #输出列表
运行结果:
['石榴',1,'香蕉','橙子']
['苹果', 1, '香蕉', '橙子']
['苹果', '香蕉', '橙子']
['苹果', '香蕉', '橙子', '猕猴桃']
['苹果', '香蕉', '火龙果', '橙子', '猕猴桃’]
['猕猴桃', '橙子', '火龙果”', '香蕉', '苹果']
['橙子', '火龙果”', '猕猴桃', '苹果', '香蕉']
动手试一试
思考差异?
object = [“why”, “are”, “why”]
object.remove(x)表示在列表中删除首次出现的指定元素x
A
B
C
计算机程序中某些代码的反复执行。
又称while循环,用于循环次数未知的情况。
又称for循环,当循环一定次数时称为计数循环。
循环
计数循环
条件循环
循环
for 循环变量 in 列表:
语句或语句组
for 循环变量 in range( ):
语句或语句组
注意事项:
冒号要记得
循环体缩进4格
计数循环
循环重复次数一定时,我们通常称为计数循环。
在python中,使用for 语句来创建这类循环。
for语句的基本格式如下。
计数循环
for 循环变量 in 列表:
语句或语句组
语句格式
for i in ["hello","world"]:
print (i) # 循环体
运行结果:
hello
world
一组重复执行的语句称为循环体。
循环体必须相对关键词for有缩进。
(列表中元素个数决定循环次数)
基本格式:range(start, stop, step)
range(1,6)——[1,2,3,4,5]
for i in range(101):
print(i) #输出0,1,2,3,…100的自然数
列表[0,1,2,3,4…100]
range( )函数可以生成某个范围内的数字列表。
range( )函数
range(5)——[0,1,2,3,4]
range(start, stop, step)
参数说明:
start: 计数从 start 开始。默认从 0 开始。例如range(5)等价于range(0, 5)
stop: 计数到 stop 结束,但不包括 stop。例如:range(0,5) 是[0, 1, 2, 3, 4]
step:步长,默认为1。例如:range(0,5) 等价于 range(0, 5, 1)
左闭右开
多少年资金全部取出
小明爸爸购买了10万元一年期收益率3.7%的银行保证收益型理财产品。每年理财赎回后,他会提取2万元用作生活所需,余下资金仍购买此种理财。在收益率不变的情况下,多少年后本金被全部取出?
计算理财产品收益
money= round(money* (1+0.037),2)-20000
循环次数?
条件循环一般用于循环次数未知的情况。
当关系表达式为真时保持循环,直到其为假时停止整个while循环。
循环体中必须有改变条件表达式值的语句,否则将会变成死循环。
while 关系表达式:
语句或语句组 #此行缩进4格
条件循环
例:
s=0
while s<=30:
s=s+10 #循环体
print(s) #循环体
运行结果:
10
20
30
40
输入s=0
s<=30
s=s+10
结束
输出s
开始
YES
NO
结束
条件循环
思考:
s=0
while s<=30:
s=s+10 #循环体
print(s) #循环体
运行结果:
40
调试器pdb 模块
例如 import pdb
pdb.set_trace()
运行后” p”命令查看变量
运行后” c”命令继续运行
运行后” q”命令退出程序
调试程序
周而复始的循环
计数循环
条件循环
列表
range函数
循环次数未知
已知循环次数
结合实际情况灵活运用
while 关系表达式:
语句或语句组
for 循环变量 in range( ):
语句或语句组
for 循环变量 in 列表:
语句或语句组
小结
求和1+2+3+……+100=?
s=0
for i in range(101):
s=s+i
print(s)
①for循环
②while循环
s=0
i=1
while i<=100 :
s=s+i #累加求和
i=i+1 #累加计数
print(s)
小试牛刀
for循环嵌套:尝试打印出九九乘法表
for i in range(1,10):
for j in range(1,10):
print("{0:1}*{1:1}={2:2}".format(j,i,j*i),end=" ")
print( )
拓展知识