版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微项目3用迭代算法探究数据变化的规律Phthon编程------3迭代算法学习目标1.本项目的核心是理解迭代思想并运用循环结构完成迭代算法的编程实现,掌握迭代变量、迭代表达式的识别技巧,学会利用迭代算法设计程序进行问题推导。2.迭代算法的关键是:
识别迭代变量
建立迭代表达式
控制迭代过程跳绳是一项简单易行的体育运动。为了增强体质,甲乙两位同学各自制订了循序渐进的锻炼方案。甲同学决定第一天跳绳100下,第二天开始每天增加5下。乙同学也决定第一天跳绳100加10下。两位同学按照上述方案锻炼30天,各自的总运动量是多少下?看看谁的总运动量大。活动1观察数据累加的迭代算法乙同学训练日志第一天:
100第二天:
100第三天:
110
第四天:
…..….甲同学训练日志第一天:
100第二天:
105第三天:
110第四天:
……1观察数据累加规律甲同学决定第一天跳绳100下,第二天开始每天增加5下。乙同学也决定第一天跳绳100下,以后每隔一天增加10下。甲同学每天的跳绳次数(用a表示):al=100
#第1天a2=a1+5#第2天a3=a2+5#第3天2.初步设计迭代算法——模拟第一次
迭代乙同学每天的跳绳次数(用b表示):bl=100#第1天b2=b1#第2天b3=b2+10#第3天迭代:是用旧值重复推出新值的过程。每一次迭代得到的结果会作为下一次迭代的初始值,如此一步步逼近所寻求的目标或得到需要的结果。迭代关系b1=100#第1天b2=b1#第2天b3=b2+10#第3天al=100
#第1天a2=a1+5#第2天a3=a2+5#第3天#!/usr/bin/onvpython3#甲同学每天的跳绳次数al=100
#第1天a2=al+5
#第2天a3=a2+5
#第3天#乙同学每天的跳绳次数b1=100
#第1天b2=b1
#第2天b3=b2+10
#第3天#显示甲乙同学3天跳绳的总数print(“甲同学3天共跳绳:,al+a2+a3,“下”)print("乙同学3天共跳绳:",b1+b2+b3,“下”)思考:尝试继续编写程序计算前10天的跳绳总数,
程序需要编写多少行?(2)体验迭代算法程序----顺序结构使用顺序结构描述送代虽然直观,但编程及程序运行效率低,当迭代次数较多时,使用顺序结构就显得力不从心。可以尝试采用循环结构程序实现迭代算法。累计跳绳总数。在构造循环结构程序之前,需要分析出送代关系,这样才能设计出相应的迭代程序迭代算法是用计算机解决问题的基本方法之一。在使用迭代算法解决问题时,需要注意:1.确定迭代变量。在可以使用迭代算法解决的问题中,至少存在一个迭代变量。2.建立迭代关系式。这是解决迭代问题的关键。3.控制迭代过程。要用循环结构程序让迭代自动进行。活动2
用循环结构实现自动选代
(1)每天的跳绳数迭代关系甲乙两位同学每天的跳绳数规律比较好找。在顺序程序设计中已经有体验,其选代关系式可如下表示:甲同学每天跳绳数量迭代关系式:ai=ai-1+5(i>=2)乙同学每天跳绳数量迭代关系式:ai=ai-1(i为偶数,i>=2)和ai=ai-1+10(i为奇数,i>=3)(1).分析数据的迭代关系跳绳总量的迭代关系示意图每人跳绳总数如图所示。由此图很容易发现其计算规律是以前的总数加当天的数量,如,甲同学跳绳总数的迭代关系式为xi=xi-1+ai(i>=2)。(2).分析迭代过程的程序代码【1】每天的跳绳数迭代过程a=a+5
#甲同学每天都增加5次ifi%2=1:
#当前天数为奇数时
b=b+10
#乙同学的跳绳次数增加10甲同学每天跳绳100下,第2天开始每天增加5下;乙同学每天跳绳100下,每隔一天增加10下。用a表示甲同学每天的跳绳数,b表示乙同学每天的跳绳数。每天的跳绳数迭代过程为:
【2】新一天的跳绳累计总数迭代过程用x表示新一天甲同学的总跳绳数,y表示新一天乙同学的总跳绳数,新一天的跳绳累计总数迭代关系为:x=x+ay=y+b可以构建一个固定次数的循环来确定在什么时候结束迭代过程,在此过程中应用迭代公式让迭代变量自动迭代,计算出结果。3.用循环结构程序实现自动迭代运行完整的迭代程序,体验迭代的过程,并修改程序计算出n天后甲、乙两位同学各自的总运动量,比较谁的运动量更大、谁的训练更加科学。foriinrange(2,n+1):
a=a+5
#甲同学每天都增加5次
ifi%2==1:
#当前天数为奇数时
b=b+10
#乙同学的跳绳次数增加10次
#计算甲乙同学跳绳的累加次数
x=x+a
y=y+b#i/usr/bin/env
python3a=100
#甲同学第1天的跳绳次数b=100
#乙同学第1天的跳绳次数#甲乙同学累计跳绳次数分别用x、y表示X=a
#甲同学第1天累计跳绳次数y=b
#乙同学第1天累计跳绳次数n=30
#跳绳的总天数foriinrange(2,n+1):
a=a+5
#甲同学每天都增加5次
if
i%2==1:
#当前天数为奇数时
b=b+10#乙同学的跳绳次数增加10次x=x+a
#计算甲乙同学跳绳的累加次数
y=y+b#显示甲乙同学n大跳绳的总数print(“甲同学,n,“天共跳绳”,x,下)print("乙同学",n,天共跳绳",下)跳绳总量的计算程序——迭代算法(循环结构)
#从第二天开始选代计算foriinrange(2,n+1):
a=a+5
#甲同学每天都增加5次
if
i%2==1:
#当前天数为奇数时
b=b+10
#乙同学的跳绳次数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高三数学试题卷子及答案
- 2026年农业机械化创新技术与市场前景分析报告
- 2026年集装箱物流行业技术创新与应用报告
- 2026年非热杀菌行业创新发展趋势报告
- 2026年化妆品行业纳米护肤技术报告
- 2026年生物科技前沿创新成果行业报告
- 电影《美女与野兽》课件
- 2026年供销合作社发展现状及趋势预测研究报告
- 离型膜2000卷、泡棉500卷项目环境影响报告表环评报告
- 2026年女式正装仿皮鞋市场发展前景分析及供需格局研究预测报告
- 建设工程监理工作标准(2026版)
- 2026年农村住宅行业洞察报告及未来五至十年发展趋势报告
- 2026年重大事故隐患判定考试题库与答案
- 2026年云南省昆明市公安招聘辅警考试试卷带答案
- DELE A1西班牙语全真模拟试题(含详细答案解析)
- 僵人综合征疾病研究
- 2026年《安全员》考试试题及答案
- 出土坡道施工方案
- 2026年新人教版三年级上册数学第五单元《线和角》教学设计
- 外协加工厂商准入评估制度
- (2026年)骨性关节炎患者健康宣教课件
评论
0/150
提交评论