Python语言程序设计第三章顺序程序设计课件.ppt
Python程序设计第3章 顺序程序设计 Python程序设计 第3章 顺序程序设计2第3章 顺序程序设计3.1 算法3.2 程序的基本结构3.3 程序的输入与输出3.4 顺序程序设计举例 Python程序设计 第3章 顺序程序设计3特征:有穷性 确定性评价标准:正确性 可读性 健壮性(Robust,鲁棒性)高效率与低存储要求定义:对特定问题求解步骤的一种描述,它是指 令的有限序列,其中每一条指令表示一个 或多个操作。数据结构+算法=程序3.1 算法可执行性有输入、输出 Python程序设计 第3章 顺序程序设计43.1 算法规范的方法:自然语言、流程图、N-S结构流程图、伪代码。(1)自然语言:人们日常生活中的语言,用自然语言通俗易懂,容易被人接受。(2)流程图的基本构成:起至框输入输出判断框处理框或流程线连接点注释框 Python程序设计 第3章 顺序程序设计5流程图的三种基本结构aA Bb顺序结构先执行A,再执行B.若P为真,则执行A,否则执行B.若P为真,则执行A,否则跳过A.aAYNBpa bAPNY b选择结构 Python程序设计 第3章 顺序程序设计6流程图的三种基本结构Ap NY当型循环结构a bAp YNba直到型循环先执行A,再判断,若P为真,反复执行A,P为假时出循环。当P为真,反复执行A,P为假时出循环。Python程序设计 第3章 顺序程序设计7 N-S流程图去掉了箭头,算法写在一个矩形框里。它也有三种结构:顺序、选择和循环(3)N-S结构流程图AB顺序结构pyes no A B选择结构当p成立A当型循环A 当p成立直到型循环 Python程序设计 第3章 顺序程序设计8任何程序均可以由“顺序”、“选择”和“循环”这三种基本结构通过有限次的组合与嵌套来描述。任何程序设计语言均由这三种基本结构组成,其差别在于具体语法的形式不同,而原理是相同的。3.2 程序的基本结构 Python程序设计 第3章 顺序程序设计91、顺序结构ABAB流程图N-S图 Python程序设计 第3章 顺序程序设计102、选择结构n分支选择结构 Python程序设计 第3章 顺序程序设计113、循环结构n当型循环n直到型循环 Python程序设计 第3章 顺序程序设计12n共同特点:单入口、单出口n三种结构之间可以是顺序关系、平行关系,也可以互相嵌套,通过结构之间的复合形成复杂的关系。三种基本结构的特点 Python程序设计 第3章 顺序程序设计13流程图例1:求三个整数的和开始输出sum的值结束输入x,y,zsum=x+y+z输出sum的值sum=x+y+z输入x,y,zN-S结构流程图 Python程序设计 第3章 顺序程序设计14例1:求三个数中最小的那个数流程图N-S结构流程图开始输出min的值输入a,b,cacmin=cYNmin=b min=aacY N输入a,b,c输出min的值 Python程序设计 第3章 顺序程序设计153.3 数据的输入和输出(Input and Output)一般一个程序分为三步进行:输入原始数据、进行计算处理和输出运算结果。n(1)标准输入input()input(提示字符串)Python程序设计 第3章 顺序程序设计16input()n 在Python2.x 中,函数返回结果的类型由输入时使用的界定符来决定。x=input(Please enter your input:)Please enter your input:5 x=input(Please enter your input:)Please enter your input:5 x=input(Please enter your input:)Please enter your input:1,2,3 x=input(Please enter your input:)Please enter your input:(1,2,3)Python程序设计 第3章 顺序程序设计17raw_input()n Python2.x 中提供该函数用来接收用户输入的值,该函数将所有用户的输入都作为字符串看待,返回字符串类型。x=raw_input(Please enter your input:)Please enter your input:5x5x=raw_input(Please enter your input:)Please enter your input:(1,2,3)x(1,2,3)Python程序设计 第3章 顺序程序设计18input()在Python3.x 中,仅保留了input()函数。input()函数接收任意输入,将所有输入默认为字符串处理。x=input(Please enter your input:)Please enter your input:5 print(type(x)说明:内置函数type 用来返回变量类型。当输入数值5 赋值给变量x 之后,x 的类型为字符串类型。x=input(Please enter your input:)Please enter your input:(1,2,3)print(type(x)Python程序设计 第3章 顺序程序设计19input()如果要输入数值类型数据,可以使用类型转换函数将字符串转换为数值。x=int(input(“please input your input:”)please input your input:5 print(type(x)说明:x 接受的是字符串5,通过int()函数将字符串转换为整型。Python程序设计 第3章 顺序程序设计20(2)标准输出在Python2.x 中使用的是print 语句输出在Python3.x 中使用的是print()函数输出print()函数的一般形式为:print(输出项1,输出项2,.,输出项n,sep=分隔符,end=结束符)说明:输出项之间用逗号分隔,没有输出项时输出一个空行。sep 表示输出时候各个输出项之间的分隔符,end 表示输出时的结束符。Python程序设计 第3章 顺序程序设计21(2)标准输出print 函数从左求出至右各输出项的值,并将各输出项的值依次显示在屏幕的同一行上。x,y=2,3print(x,y)2 3print(x,y,sep=:)2:3print(x,y,sep=:,end=%)2:3%Python程序设计 第3章 顺序程序设计22(3)格式化输出1.字符串格式化%格式控制字符串%(输出项1,输出项2,.输出项)(1)常规字符:包括可显示的字符和用转义字符表示的字符。(2)格式控制符:以%开头的一个或多个字符,以说明输出数据的类型、形式、长度、小数位数等。例如:print(“sum=%d”%x)Python程序设计 第3章 顺序程序设计23print()格式化说明 4d或i十进制格式o 八进制格式x、X 十六进制格式c一个字符格式s字符串格式f实数格式e或E指数格式g或G1235678 e和f中较短一种格式 Python程序设计 第3章 顺序程序设计242.附加格式说明符m:域宽,十进制整数,用以描述输出数据所占宽度。n:附加域宽,十进制整数,用于指定实型数据小数部分的输出位数。:输出数据左对齐,默认为右对齐+:输出正数时,也以+号开头#:作为o,x 的前缀时,输出结果前面加上前导符号0,,0 x Python程序设计 第3章 顺序程序设计25格式化输出:year=2017month=1day=28 print(%04d-%02d-%02d%(year,month,day)2017-01-28 value=8.123 print(%06.2f%value)008.12 print(%d%10)10print(%o%10)12print(%02x%10)0aprint(%04X%10)000Aprint(%.2e%1.2888)1.29e+00 Python程序设计 第3章 顺序程序设计263.4 顺序程序设计举例【例1】从键盘输入一个3 位整数,分离出它的个位、十位和百位并分别在屏幕输出。x=int(input(“请输入一个3位整数:”)a=x/100b=(x-a*100)/10c=x%10print(“百位=%d,十位=%d,个位=%d”%(a,b,c)程序运行结果如下:请输入一个3位整数:235百位=2,十位=3,个位=5 Python程序设计 第3章 顺序程序设计27顺序程序设计举例例2:已知三角形三条边的边长(为简单起见,假设这三条边可以构成三角形),求三角形的面积。分析:三角形面积=其中,a、b、c是三角形三边的边长,p是三角形周长的一半 Python程序设计 第3章 顺序程序设计28import matha=float(input(请输入三角形的边长a:)b=float(input(请输入三角形的边长b:)c=float(input(请输入三角形的边长c:)p=(a+b+c)/2area=math.sqrt(p*(p-a)*(p-b)*(p-c);print(str.format(“三角形的面积=%f”%area)Python程序设计 第3章 顺序程序设计29学习要点:1、理解算法的概念。2、掌握描述算法的图形工具:流程图、N-S图。掌握使用N-S图描述算法。3、掌握程序流程的三种基本结构:顺序结构、选择结构、循环结构。4、掌握常用的I/O函数,重点掌握input、print函数的控制格式。Python程序设计 第3章 顺序程序设计30上机作业:1.输入长方形的长和宽,计算面积并输出。2.从键盘输入一个3位整数n,输出其逆序数m。例如输入n=128,则m=821。3.输入三个浮点数,求它们的平均值并保留一位小数输出。