版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机编程导论本章主讲 赵家刚 第4章 循环结构 程序设计第1页,共24页。计算机编程导论程序设计的3种基本结构(1)顺序结构(2)选择结构(3)循环结构顺序结构 是指程序流程按先后顺序执行,只有执行了前一步,才能执行后一步。例如火车在轨道上行驶,只有过了上一站点才能到达下一站点。 选择结构 又称分支结构,是指程序流程可以分几条路径执行。例如在一个十字路口处,可以选择向东、南、西、北几个方向行走。 循环结构 又称重复结构,是指程序流程重复执行某一段代码。例如万米跑,围着足球场跑道不停地跑,直到满足条件时(25圈)才停下来。第2页,共24页。计算机编程导论语句A语句B顺序结构流程图条件判断语句A
2、真语句B假选择结构流程图条件判断循环体真假循环结构流程图3种基本结构的流程图第3页,共24页。计算机编程导论【问题4-1】 用户输入若干个分数,求所有分数的平均分。每输入一个分数后询问是否继续输入下一个分数,回答“yes”就继续输入下一个分数,回答“no”就停止输入分数。分析:该问题需要输入若干分数并求和,这是一个重复的过程,应使用循环结构解决。循环次数事先不确定,需根据应答“yes”、“no”来决定循环是否继续。第4页,共24页。计算机编程导论 #ques4_1.pyendFlag=yessum=0.0count=0while endFlag0=y: x=input(请输入一个分数: ) s
3、um=sum + x count=count + 1 endFlag=raw_input(继续输入吗(yes or no)? ) print n平均分是: , sum / count第5页,共24页。计算机编程导论4.1循环结构设计问题【问题4-2】用户输入一个列表,求出列表中所有正偶数之和。分析:由于不知道用户输入的具体数据及个数,因此需要在循环结构中进行判断和累加。第6页,共24页。计算机编程导论#ques4_2.pyli=input(请输入一个列表:)sum=0for x in li: if x0 and x%2=0: sum+=xprint sum=,sum程序输入及运行结果:请输入一
4、个列表:2, 3, 4, -5, 6, 12sum= 24第7页,共24页。计算机编程导论4.2 循环结构概述循环结构是一种重复执行的程序结构。实际应用中,常会碰到一些需要重复执行的步骤,如级数求和、统计报表等等。例如: (1)计算 1 + 2 + 3 + + 100,这是一个级数求和问题,需要重复执行100次,对100个数依次进行累加。 (2)假设1个班级中有n名同学,统计男同学和女同学各有多少名。该问题的求解需要重复执行n次,对每1个同学依次进行判断,同时统计男同学和女同学的人数。第8页,共24页。计算机编程导论4.2 循环结构概述(3)给定2个整数,求它们的最大公约数和最小公倍数。例如:
5、给定6和9,求最大公约数时,循环过程从6依次递减至1,当循环到3时,判断得6和9都能被3整除,于是终止循环,求得最大公约数是3.;求最小公倍数时,循环过程从9依次递增至54,当循环到18时,判断得18同时能被6和9整除,于是终止循环,求得最小公倍数是18。 Python提供了两种基本的循环结构语句while语句、for语句。第9页,共24页。计算机编程导论4.3 while语句while 表达式:循环体表达式循环体真假while 表达式:循环体else:else子句第10页,共24页。计算机编程导论(1)while语句是一个条件循环语句,即首先计算表达式,根据表达式值的真、假来决定是否继续循环
6、。 (2)while语句的语法与if语句类似,要使用缩进来分隔子句。(3)while语句的条件表达式不需要用括号括起来,但是表达式后面必须有冒号。(4)使用while语句编程通常会遇到两种题型,一种是循环次数事先确定的问题;一种是循环次数事先不确定的问题。说明:第11页,共24页。计算机编程导论4.3.1 while语句解决不确定循环次数的问题【分析】该问题使用循环结构解决,由于不确定用户即将输入几个正整数,因此属于不确定循环次数的问题。【例4-1】编程从键盘输入若干正整数,求所有输入整数之和。当输入整数为负数时,结束该操作。第12页,共24页。计算机编程导论#Exp4_1.pyprint 请
7、输入若干正整数进行求和操作,当输入负数时结束: s = 0 x = input(请输入一个整数: )while x = 0: s = s + x x = input(请输入一个整数: )print 整数之和=, s程序:程序运行结果:请输入若干正整数进行求和操作,当输入负数时结束: 请输入一个整数: 10请输入一个整数: 20请输入一个整数: 30第13页,共24页。计算机编程导论【例4-2】编程从键盘输入若干个字符,一边输入一边输出,当输入“#”字符时终止该操作。【分析】(1)本题使用循环结构解决,每次循环从键盘输入一个字符,直到输入为“#”字符时停止循环。(2)由于输入的字符个数无法确定,
8、因此循环次数不确定。 是否第14页,共24页。计算机编程导论a = raw_input(请输入字符,如果输入 # 号则结束输入操作: )while a != #: #判断输入的是否是井号print 您输入的字符是:, a #打印输入的字符#以下语句是再次输入一个新的字符a = raw_input(请输入字符,如果输入 # 号则结束输入操作: )else:print 输入结束程序:提问:(1)循环结束后,变量 a 中的值是什么?(2)如果循环体中没有下面这条语句会怎么样?a =raw_ input(请输入字符,如果输入 # 号则结束输入操作: )第15页,共24页。计算机编程导论4.3.2 wh
9、ile语句解决确定循环次数的问题 确定循环次数的问题是指循环之前可以预知循环即将执行的次数,为了控制循环次数,通常在程序中设置一个计数变量,每次循环,该变量进行自增或自减操作,当变量值自增到大于设定的上限值或者自减到小于设定的下限值时,循环自动结束。第16页,共24页。计算机编程导论4.3.2 while语句解决确定循环次数的问题【例4-3】 编程计算1+2+3+100 的值。分析:本题使用循环结构解决,每循环一次累加一个整数值,整数的取值范围为1100。由于整数的范围是确定的,因此循环次数也是确定的。第17页,共24页。计算机编程导论4.3.2 while语句解决确定循环次数的问题程序:#E
10、xp4_3.pyi, s = 1, 0while i = 100 :s = s + ii += 1print 1+2+3+.+100 = , s框图:第18页,共24页。计算机编程导论4.3.2 while语句解决确定循环次数的问题分析:本题使用循环结构解决,每循环一次输出一个列表元素值,由于列表定义后,其长度是已知的,因此循环次数也是确定的。【例4-4】 依次输出列表中每个元素的值。第19页,共24页。计算机编程导论4.3.2 while语句解决确定循环次数的问题程序:#Exp4_4.pya_list = a, b, mpilgrim, z, examplea_len = len(a_list)i = 0while i a_len: print 列表的第, i+1, 个元素是:, a_listi i += 1第20页,共24页。计算机编程导论练习:求1+3+5+99求2*4*6*12第21页,共24页。计算机编程导论第6次上机作业:1.计算,参考值: S=1.7182822.编程求斐波拉契数列的前20项,已知该数列的第一、二项分别是0、1,从第三项开始,每一项都是前两项之和。例如:0, 1, 1, 2, 3, 5, 8, 133.求1100之间所有的素数,并统计素数的个数。第22页,共24页。人有了知识,就会具备各种分析
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年绍兴文理学院单招职业技能考试题库附答案详解
- Unit2 Lesson4 Again,please(教学设计)-三年级英语下册同步备课系列(鲁科版五四制三起·2024)
- 第2课 古代世界的帝国与文明的交流教学设计2025-2026学年高一下学期统编版(2019)必修中外历史纲要下册
- 第13课 古往今来信息传递方法的变化教学设计小学信息技术(信息科技)三年级下册粤科版
- 江苏省无锡市某校2024-2025学年高二上学期期末考试英语试题
- 湖南省湘一联盟2025-2026学年高一上学期12月月考英语试题(解析版)
- 初中英语阅读课堂系统化教学长效实施机制探究
- 饮用水管网管道焊接方案
- 幼儿心理健康教育渗透实施方案
- 2026年高一数学竞猜题目及答案
- 2026河南开封工程职业学院招聘57人备考题库及答案详解一套
- 2026春苏教版五年级下册数学期末综合练习卷含参考答案 (三套)
- 2025年江苏镇江市初二学业水平地生会考考试试题及答案
- 2026版《国有企业领导人员廉洁从业规定》全文+新旧对比+高频考点+习题答案详解
- GB/T 47529-2026自助仓储运营管理规范
- 医院检验科试剂管理台账记录
- 消防维保技术服务实施方案
- 《老年康复综合评估指南》
- 依库珠单抗注射液-临床用药解读
- 2023年广西壮族自治区中考物理真题卷(含答案与解析)
- 定弘法师占察忏仪轨
评论
0/150
提交评论