Python程序设计 课件 单元3 程序的控制结构础_第1页
Python程序设计 课件 单元3 程序的控制结构础_第2页
Python程序设计 课件 单元3 程序的控制结构础_第3页
Python程序设计 课件 单元3 程序的控制结构础_第4页
Python程序设计 课件 单元3 程序的控制结构础_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单元3程序的控制结构-Python编程中的控制结构目录顺序结构程序设计选择结构程序设计循环结构程序设计案例:四则运算器的实现内容介绍介绍顺序结构、选择结构和循环结构掌握程序代码执行流程的控制方法通过实际案例应用理论知识学习要点理解算法的基本特性掌握流程图的使用熟悉流程图的基本元素和符号理解程序代码按顺序执行掌握单分支、双分支和多分支选择结构掌握循环结构的应用理解break和continue语句的作用掌握循环结构的嵌套使用3.1顺序结构程序设计3.1.1算法3.1.2流程图3.1.3顺序结构的程序设计3.1顺序结构程序设计算法的定义和特性有穷性、确定性、可行性、输入、输出流程图的基本元素起止框、判断框、处理框、输入/输出框、流程线、连接点顺序结构编程示例示例代码:[例3-1]计算两个数的和3.1顺序结构程序设计1.有穷性:一个算法必须总是(对任何合法的输入值)在执行有穷步骤之后结束,且每一步都可在有穷时间内完成。2.确定性:算法中每一条指令必须有确切的含义,即在任何条件下,算法只有唯一的一条执行路径。3.可行性:算法中描述的操作都是可以通过已经实现的基本运算执行有限次数来实现的。4.输入:一个算法有零个或多个的输入。5.输出:一个算法有一个或多个输出。3.1.1算法算法:是解决特定问题的一系列步骤或步骤的集合,用于指导计算机进行操作。在计算机科学中,算法用于处理数据、执行计算和自动化任务。算法特性:3.1顺序结构程序设计3.1.2流程图流程图:是用图形符号表示算法逻辑的一种图示工具,通过不同的图形符号和箭头表示操作步骤及其执行顺序;它是程序分析和过程描述的最基本方式。流程图6种基本元素:说明:1.起止框:表示程序逻辑的开始或结束;2.判断框:表示一个判断条件,并根据判断结果选择不同的执行路径;3.处理框:表示一组处理过程,对应于顺序执行的程序逻辑;4.输入/输出框:表示程序中的数据输入或结果输出;5.流程线:表示程序的控制流,以带箭头直线或曲线表达程序的执行路径;6.连接点:表示多个流程图的连接方式,常用于将多个较小流程图组织成较大流程图。3.1顺序结构程序设计3.1.2流程图3.1顺序结构程序设计3.1.3顺序结构的程序设计在Python编程中,顺序结构是最简单也是最常用的控制结构。理解顺序结构并掌握其应用是编写复杂程序的基础。Python的顺序结构没有特别的语法要求,只需按照逻辑顺序编写代码即可。顺序结构的核心思想是代码按照编写顺序逐行执行,没有任何跳转和分支。每一行代码都在前一行代码执行完毕后开始执行,如图所示。顺序结构适用于没有复杂条件判断或循环的简单任务。3.1顺序结构程序设计3.1.3顺序结构的程序设计[例3-1]:计算两个数的和。#顺序结构示例:计算两个数的和print("Step1:Starttheprogram")#Step2:定义变量x=10y=20#Step3:计算和result=x+y#Step4:输出结果print("Thesumofxandyis:",result)print("Step5:Endtheprogram")3.2选择结构程序设计3.2.1单分支选择结构3.2.2双分支选择结构3.2.3多分支选择结构3.2.4嵌套的选择结构3.2选择结构程序设计单分支选择结构语法:ifcondition:[例3-2]判断一个数是否为正数双分支选择结构语法:ifcondition:else:[例3-3]判断一个数是正数还是负数示例代码多分支选择结构语法:ifcondition1:elifcondition2:else:[例3-4]判断一个数的范围嵌套选择结构语法:ifcondition1:ifcondition2:else:else:ifcondition3:else:[例3-5]判断一个数的具体范围选择结构是编程中用于根据条件的真假来选择执行不同代码块的控制结构。它允许程序在不同情况下执行不同的操作,从而实现更复杂的逻辑。Python中的选择结构主要包括if语句、if-else

语句和if-elif-else语句。图3-4双分支选择结构图3-3单分支选择结构选择结构通过条件表达式来决定是否执行某段代码。条件表达式的结果为布尔值(True或False)。根据条件表达式的结果,程序选择执行相应的代码块。3.2选择结构程序设计3.2选择结构程序设计3.2.1单分支选择结构单分支选择结构的关键点在于它只有一个分支,并且只有在条件为真时才会执行。语法:ifcondition:#代码块其中,condition是一个布尔表达式,如果它的值为True,则执行缩进的代码块;如果为False,则跳过该代码块。3.2选择结构程序设计3.2.1单分支选择结构[例3-2]:编写一个程序,判断一个输入的整数是否为正数。#判断一个数是否为正数x=int(input("Enteraninteger:"))ifx>0:print("Thenumberispositive.")3.2选择结构程序设计3.2.2双分支选择结构双分支选择结构是控制结构中的一种,用于根据条件的真假来选择执行两个代码块中的一个。它比单分支选择结构更强大,可以处理更复杂的逻辑。语法:ifcondition:#代码块1else:#代码块2双分支选择结构的含义在于根据condition的真假来选择执行两个代码块中的一个。如果条condition为真,执行代码块1;如果条件为假,执行代码块2。3.2选择结构程序设计3.2.2双分支选择结构[例3-3]:编写一个程序,判断一个输入的整数是正数还是负数。#判断一个数是正数还是负数x=int(input("Enteraninteger:"))ifx>=0:print("Thenumberispositiveorzero.")else:print("Thenumberisnegative.")3.2选择结构程序设计3.2.3多分支选择结构多分支选择结构if-elif-else用于根据多个条件选择执行多个代码块中的一个。它比单分支和双分支选择结构更强大,可以处理更复杂的逻辑。语法:ifcondition1:#代码块1elifcondition2:#代码块2elifcondition3:#代码块3.elifconditionN:#代码块Nelse:#代码块N+1多分支选择结构的含义在于根据多个条件(condition)的真假来选择执行多个代码块中的一个。如果condition1为真,则执行代码块1;否则,判断condition2,依此类推,当condition1至conditionN都为假时,则执行代码块N+1。3.2选择结构程序设计3.2.3多分支选择结构[例3-4]:编写一个程序,判断一个输入的整数在哪个范围内。#判断一个数的范围x=int(input("Enteraninteger:"))ifx<0:print("Thenumberisnegative.")elifx==0:print("Thenumberiszero.")elifx>0andx<=10:print("Thenumberisbetween1and10.")else:print("Thenumberisgreaterthan10.")3.2选择结构程序设计3.2.4嵌套的选择结构嵌套选择结构的语法与基本的选择结构类似,只是一个选择结构嵌套在另一个选择结构的代码块内。语法:ifcondition1:ifcondition2:#代码块1else:#代码块2else:ifcondition3:#代码块3else:#代码块4嵌套选择结构的含义在于根据外层条件的真假来决定是否执行内层条件判断。在上面的语法中,只有当condition1为真时才判断condition2,否则就判断condition3;也就是说执行代码块1的条件是condition1与condition2同时为真;执行代码块2的条件是condition1为真的同时condition2假;执行代码块3的条件是condition1为假并且condition3为真;执行代码块4的条件是condition1与condition3同时为假。3.2选择结构程序设计3.2.3多分支选择结构[例3-5]:编写一个程序,判断一个整数是正数、负数还是零,并进一步判断它的具体范围。#嵌套选择结构示例:判断一个数的范围x=15ifx>0:ifx<10:print("xispositiveandlessthan10")else:print("xispositiveandgreaterthanorequalto10")elifx<0:ifx>-10:print("xisnegativeandgreaterthan-10")else:print("xisnegativeandlessthanorequalto-10")else:print("xiszero"))3.3案例:四则运算器的选择实现3.3.1案例要求3.3.2实现过程3.3案例:四则运算器的选择实现3.3.1案例要求功能需求:用户交互:程序应允许用户选择加法、减法、乘法或除法运算。数据输入:用户能够输入两个数字,用于后续的算术操作。运算执行:根据用户选择的运算类型,计算并显示结果。错误处理:程序应能妥善处理除数为零的情况,避免运行时错误。技能要求:选择结构掌握:熟练使用if-elif-else语句来处理多条件判断。输入验证:确保用户输入的数据是有效的数字,增强程序的健壮性。3.3案例:四则运算器的选择实现3.3.1案例要求思政元素:代码规范:强调代码编写的规范性和整洁性,教育学生编写易于理解和维护的代码。逻辑思维与道德判断:通过正确处理各种输入和运算错误,教育学生在面对复杂问题时保持逻辑清晰并做出道德判断。技术应用与伦理:讨论技术实现在满足用户需求时应遵循的伦理原则,例如保护用户数据和提供准确信息。3.3案例:四则运算器的选择实现3.3.2实现过程实现过程步骤一:设置用户界面启动程序时显示一个简单的菜单,允许用户选择运算类型。通过输入指令选择加法、减法、乘法或除法。步骤二:接收用户输入提示用户输入两个操作数。检查输入是否为有效数字,如果不是,则提示错误并要求重新输入。步骤三:执行运算和显示结果根据用户的选择使用相应的算术运算符进行计算。如果选择了除法,检查除数是否为零,如果为零,显示错误信息而不执行除法。显示运算结果。3.4循环结构程序设计3.4.1遍历循环3.4.2条件循环3.4.3break语句3.4.4continue语句3.4.5循环结构的嵌套3.4循环结构程序设计遍历循环语法:foriteminsequence:示例代码:[例3-6]遍历字符串中的字符示例代码:[例3-7]输出从1到10的所有整数的平方条件循环语法:whilecondition:示例代码:[例3-8]输出从1到10的所有整数的平方3.4循环结构程序设计break语句示例代码:[例3-9]while循环中使用break示例代码:[例3-10]for循环中使用breakcontinue语句示例代码:[例3-11]while循环实现输出1-10间的所有奇数示例代码:[例3-12]for循环实现输出1-10间的所有奇数3.4循环结构程序设计循环结构的嵌套示例代码:[例3-13]打印乘法表3.4循环结构程序设计3.4.1遍历循环3.4.2条件循环3.4.3break语句3.4.4continue语句3.4.5循环结构的嵌套3.4循环结构程序设计遍历循环语法:foriteminsequence:示例代码:[例3-6]遍历字符串中的字符示例代码:[例3-7]输出从1到10的所有整数的平方条件循环语法:whilecondition:示例代码:[例3-8]输出从1到10的所有整数的平方3.4循环结构程序设计break语句示例代码:[例3-9]while循环中使用break示例代码:[例3-10]for循环中使用breakcontinue语句示例代码:[例3-11]while循环实现输出1-10间的所有奇数示例代码:[例3-12]for循环实现输出1-10间的所有奇数3.4循环结构程序设计循环结构的嵌套示例代码:[例3-13]打印乘法表3.4循环结构程序设计3.4.1遍历循环3.4.2条件循环3.4.3break语句3.4.4continue语句3.4.5循环结构的嵌套3.4循环结构程序设计概述循环结构使得编程更加简洁和高效,通过使用for(遍历)循环和while(条件)循环,以及配合break和continue

等控制语句,程序员可以灵活地控制代码的执行流程,从而实现复杂的任务。了解并熟练运用循环结构是每个编程者的基本技能。遍历循环条件循环3.4循环结构程序设计3.4.1遍历循环遍历循环是指通过循环结构逐一访问序列(如列表、元组、字符串、字典)中的每个元素。Python中,主要使用for循环来实现遍历。遍历循环的核心思想是逐一处理序列中的每个元素,而不需要手动管理索引或迭代器。语法:foriteminsequence:#循环体操作【else:#在循环正常结束时执行的操作】当使用foriteminsequence循环结构时,Python会按顺序遍历序列中的每个元素,并执行循环体操作。每次循环迭代时,当前元素都会被赋值给变量item,然后执行循环体操作。如果循环在遍历完整个序列后正常结束(即没有由于break语句而中断),则会执行else子句(如果有)中的操作。else子句是可选的,它用于在循环正常结束时执行一些额外的操作。3.4循环结构程序设计3.4.1遍历循环流程图:循环体操作sequence是否还有元素取出下一个元素到item中TrueFalse是否遇到break语句执行else语句开始结束FalseTrue循环体操作sequence是否还有元素取出下一个元素到item中TrueFalse是否遇到break语句执行else语句开始结束FalseTrue3.4循环结构程序设计3.4.1遍历循环[例3-6]:遍历字符串。[程序代码]text="hello"forcharintext:print(char)3.4循环结构程序设计3.4.1遍历循环[例3-7]:计算1-10的平方。#遍历循环输出平方并打印结果foriinrange(1,11):square=i**2print("Squareof",i,"is",square)3.4循环结构程序设计3.4.2条件循环条件循环是一种编程结构,用于根据某个条件反复执行一段代码,直到该条件不再满足为止。条件循环在Python中主要通过while关键字实现。语法:whilecondition:#循环体操作【else:#在循环条件变为False时执行的操作】else子句是可选的,只有当while循环正常结束时(即condition变为假时)才会执行else中的代码,如果循环是因为break语句而提前结束的,else子句不会执行。while

是一个循环控制结构,用于根据条件反复执行一段代码。condition是一个布尔表达式,返回True

或False;在每次循环开始时都会评估该条件。如果condition为真(True),则执行循环体操作;如果condition为假(False),则跳出循环,执行else

子句(如果有)中的操作。3.4循环结构程序设计3.4.2条件循环语法:whilecondition:#循环体操作【else:#在循环条件变为False时执行的操作】流程图:3.4循环结构程序设计3.4.2条件循环执行过程:whilecondition:#循环体操作【else:#在循环条件变为False时执行的操作】语法:循环体操作condition是否为TrueTrueFalse是否遇到break语句执行else语句开始结束FalseTrue3.4循环结构程序设计3.4.2条件循环[例3-8]:输出从1到10的平方。#条件循环计算平方并打印结果i=1#初始化变量i为1whilei<=10:#设置循环条件

print(i,"的平方是",i**2)#计算并打印i的平方

i+=1#增加i的值注意:程序中的每次循环迭代后,增加i

的值,以确保循环条件最终变为假,防止无限循环。Thankyou3.4循环结构程序设计3.4.1遍历循环3.4.2条件循环3.4.3break语句3.4.4continue语句3.4.5循环结构的嵌套3.4循环结构程序设计3.4.3break语句break语句用于立即终止循环,不管循环条件是否依然为真。无论是while循环还是for循环,当程序执行到break语句时,循环会立刻结束,控制流会跳到循环之后的第一条语句。break语句在if条件为真时立即终止循环。在这个例子中,当count等于5时,break语句被执行,终止了while循环。由于break语句的存在,count不会增加到10。循环会在count等于5时提前结束。[例3-9]:while循环中使用break。count=0whilecount<10:print(count)ifcount==5:break#当count等于5时,终止循环

count+=1print("循环结束")3.4循环结构程序设计3.4.3break语句[例3-10]:for循环中使用break。forcountinrange(10):print(count)ifcount==5:break#当count等于5时,终止循环print("循环结束")程序中的for循环实现了与上述程序[例3-9]中while循环相同的功能,即遍历从0到9的整数序列,并在count等于5时提前终止循环。3.4循环结构程序设计3.4.4continue语句continue语句用于立即跳过当前的循环,直接进入下一次循环。它不会终止整个循环,而只是跳过当前循环中剩余的代码,继续执行下一个循环。这在需要跳过某些特定条件下的操作时非常有用。continue语句的作用是在循环的某个条件满足时,跳过当前迭代的剩余代码,直接进行下一次迭代。具体来说,在这段代码中,continue的作用是在判断当前数是否为奇数时,如果不是奇数(即为偶数),则跳过打印操作,直接进行下一次循环,检查下一个数是否为奇数。[例3-11]:输出1-10间的所有奇数。fornuminrange(1,11):ifnum%2==0:#如果是偶数,则跳过当前迭代

continueprint(num)3.4循环结构程序设计3.4.4continue语句[例3-12]:输出1-10间的所有奇数。count=1whilecount<=10:ifcount%2!=0:#判断是否为奇数

print(count)count+=1#增加count的值编程是一种创造性的工作,实现相同功能的代码可以有不同,殊途同归。[例3-12]不用continue语句实现了与[例3-11]相同的功能。3.4循环结构程序设计3.4.5循环结构的嵌套循环结构的嵌套是指在一个循环体内再包含另一个循环。即,一个循环的主体中包含另一个循环。这种结构允许在多维数据结构或需要多层次迭代时进行操作。例如,遍历二维数组、处理复杂的嵌套条件等。[例3-13]:嵌套的for循环实现:打印“九九乘法表”。3.4循环结构程序设计3.4.5循环结构的嵌套[例3-13]:嵌套的for循环实现:打印“九九乘法表”。#控制“乘法表”的行数(1-9)foriinrange(1,10):#控制“乘法表”每行的列数(第1行1列,第2行2#列,、、、第9行9列)

forjinrange(1,i+1):#输出i行j列对应的表达式

print(f"{i}*{j}={i*j:<2}",end='‘)#每行结束后换行

print()#换行外层循环从i=1开始,每次迭代时,进入内层循环;内层循环从j=1开始,逐步增加到i,输出当前行的所有乘法表达式;内层循环结束后,执行print()换行,外层循环进入下一次迭代,输出下一行的内容;当外层循环完成所有迭代(i=9)后,程序结束。Thankyou3.5案例:四则运算器的循环实现3.5.1案例要求3.5.2实现过程3.5案例:四则运算器的循环实现案例要求持续运算、用户界面、循环控制、错误处理实现过程设计用户

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论