Python程序设计-第4章-循环结构程序设计(第6次课)

上传人:su****e 文档编号:244977996 上传时间:2024-10-06 格式:PPT 页数:22 大小:747.50KB
返回 下载 相关 举报
Python程序设计-第4章-循环结构程序设计(第6次课)_第1页
第1页 / 共22页
Python程序设计-第4章-循环结构程序设计(第6次课)_第2页
第2页 / 共22页
Python程序设计-第4章-循环结构程序设计(第6次课)_第3页
第3页 / 共22页
点击查看更多>>
资源描述
,单击此处编辑母版文本样式,第二级,第三级,计算机编程导论,单击此处编辑母版标题样式,1-,22,Copyright SWFU-CISD, 2012. All rights reserved.,计算机编程导论,本章主讲 赵家刚,第,4,章 循环结构 程序设计,计算机编程导论,程序设计的,3,种基本结构,(,1,)顺序结构(,2,)选择结构(,3,)循环结构,顺序结构,是指程序流程按先后顺序执行,只有执行了前一步,才能执行后一步。例如火车在轨道上行驶,只有过了上一站点才能到达下一站点。,选择结构,又称分支结构,是指程序流程可以分几条路径执行。例如在一个十字路口处,可以选择向东、南、西、北几个方向行走。,循环结构,又称重复结构,是指程序流程重复执行某一段代码。例如万米跑,围着足球场跑道不停地跑,直到满足条件时(,25,圈)才停下来。,计算机编程导论,语句,A,语句,B,顺序结构,流程图,条件判断,语句,A,真,语句,B,假,选择结构,流程图,条件判断,循环体,真,假,循环结构,流程图,3,种基本结构的流程图,计算机编程导论,【,问题,4-1】,用户输入若干个分数,求所有分数的平均分。每输入一个分数后询问是否继续输入下一个分数,回答“,yes”,就继续输入下一个分数,回答“,no”,就停止输入分数。,分析:该问题需要输入若干分数并求和,这是一个重复的过程,应使用循环结构解决。循环次数事先不确定,需根据应答“,yes”,、“,no”,来决定循环是否继续。,计算机编程导论,#ques4_1.py,endFlag=yes,sum=0.0,count=0,while endFlag0=y:,x=input(请输入一个分数: ),sum=sum + x,count=count + 1,endFlag=raw_input(继续输入吗(yes or no)? ),print n平均分是: , sum / count,计算机编程导论,4.1循环结构设计问题,【问题4-2】用户输入一个列表,求出列表中所有正偶数之和。,分析:由于不知道用户输入的具体数据及个数,因此需要在循环结构中进行判断和累加。,计算机编程导论,#ques4_,2,.py,li=input(,请输入一个列表,:),sum=0,for x in li:,if x0 and x%2=0:,sum+=x,print sum=,sum,程序输入及运行结果:,请输入一个列表:,2, 3, 4, -5, 6, 12,sum= 24,计算机编程导论,4.2 循环结构概述,循环结构是一种重复执行的程序结构。实际应用中,常会碰到一些需要重复执行的步骤,如级数求和、统计报表等等。例如:,(1)计算 1 + 2 + 3 + + 100,这是一个级数求和问题,需要重复执行100次,对100个数依次进行累加。,(2)假设1个班级中有n名同学,统计男同学和女同学各有多少名。该问题的求解需要重复执行n次,对每1个同学依次进行判断,同时统计男同学和女同学的人数。,计算机编程导论,4.2 循环结构概述,(,3,)给定,2,个整数,求它们的最大公约数和最小公倍数。例如:给定,6,和,9,,求最大公约数时,循环过程从,6,依次递减至,1,,当循环到,3,时,判断得,6,和,9,都能被,3,整除,于是终止循环,求得最大公约数是,3.,;求最小公倍数时,循环过程从,9,依次递增至,54,,当循环到,18,时,判断得,18,同时能被,6,和,9,整除,于是终止循环,求得最小公倍数是,18,。,Python,提供了两种基本的循环结构语句,while,语句、,for,语句,。,计算机编程导论,4.3 while语句,while 表达式:,循环体,表达式,循环体,真,假,while 表达式:,循环体,else:,else子句,计算机编程导论,(1)while语句是一个,条件循环语句,,即首先计算表达式,根据表达式值的真、假来决定是否继续循环。,(2)while语句的语法与if语句类似,要使用,缩进,来分隔子句。,(3)while语句的条件表达式不需要用括号括起来,但是表达式后面必须有,冒号,。,(4)使用while,语句编程通常会遇到两种题型,一种是循环次数事先确定的问题;一种是循环次数事先不确定的问题。,说明:,计算机编程导论,4.3.1 while语句解决不确定循环次数的问题,【,分析,】,该问题使用循环结构解决,由于不确定用户即将输入几个正整数,因此属于不确定循环次数的问题。,【,例,4-1】,编程从键盘输入若干正整数,求所有输入整数之和。当输入整数为负数时,结束该操作。,计算机编程导论,#Exp4_1.py,print 请输入若干正整数进行求和操作,当输入负数时结束: ,s = 0,x = input(请输入一个整数: ),while x = 0:,s = s + x,x = input(请输入一个整数: ),print 整数之和=, s,程序:,程序运行结果:,请输入若干正整数进行求和操作,当输入负数时结束,:,请输入一个整数,: 10,请输入一个整数,: 20,请输入一个整数,: 30,计算机编程导论,【,例,4-2】,编程从键盘输入若干个字符,一边输入一边输出,当输入“,#”,字符时终止该操作。,【,分析,】,(,1,)本题使用循环结构解决,每次循环从键盘输入一个字符,直到输入为“,#”,字符时停止循环。,(,2,)由于输入的字符个数无法确定,因此,循环次数不确定,。,是,否,计算机编程导论,a = raw_input(请输入字符,如果输入 # 号则结束输入操作: ),while a !=,#,:,#判断输入的是否是井号,print,您输入的字符是:, a,#打印输入的字符,#以下语句是再次输入一个新的字符,a = raw_input(请输入字符,如果输入 # 号则结束输入操作: ),else:,print 输入结束,程序:,提问:,(1)循环结束后,变量 a 中的值是什么?,(2)如果循环体中没有下面这条语句会怎么样?,a =raw_ input(请输入字符,如果输入 # 号则结束输入操作: ),计算机编程导论,4.3.2,while语句解决确定循环次数的问题,确定循环次数的问题是指循环之前可以预知循环即将执行的次数,为了控制循环次数,通常在程序中设置一个计数变量,每次循环,该变量进行自增或自减操作,当变量值自增到大于设定的上限值或者自减到小于设定的下限值时,循环自动结束。,计算机编程导论,4.3.2,while语句解决确定循环次数的问题,【,例,4-3】,编程计算,1+2+3+100,的值。,分析:本题使用循环结构解决,每循环一次累加一个整数值,整数的取值范围为,1100,。由于整数的范围是确定的,因此循环次数也是确定的。,计算机编程导论,4.3.2,while语句解决确定循环次数的问题,程序:,#Exp4_3.py,i, s = 1, 0,while i = 100 :,s = s + i,i += 1,print 1+2+3+.+100 = , s,框图:,计算机编程导论,4.3.2,while语句解决确定循环次数的问题,分析:本题使用循环结构解决,每循环一次输出一个列表元素值,由于列表定义后,其长度是已知的,因此循环次数也是确定的。,【,例,4-4】,依次输出列表中,每,个元素的值。,计算机编程导论,4.3.2,while语句解决确定循环次数的问题,程序:,#Exp4_4.py,a_list = a, b, mpilgrim, z, example,a_len = len(a_list),i = 0,while i a_len:,print 列表的第, i+1, 个元素是:, a_listi,i += 1,计算机编程导论,练习,:,求,1+3+5+99,求,2*4*6*12,计算机编程导论,第,6,次上机作业:,1.计算,参考值: S=1.718282,2.编程求斐波拉契数列的前20项,已知该数列的第一、二项分别是0、1,从第三项开始,每一项都是前两项之和。例如:0, 1, 1, 2, 3, 5, 8, 13,3.求1100之间所有的素数,并统计素数的个数。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!