1、第2单元 编程计算第1单元 初识数据与计算第3单元 认识数据第4单元 计算与问题解决第5单元 数据分析与人工智能信息技术信息技术(必修(必修1 1)学习目标学习目标1 1、掌握顺序结构、分支结构的基本结构、掌握顺序结构、分支结构的基本结构。2 2、学会赋值语句、学会赋值语句、if if语句的使用方法。语句的使用方法。3 3、运用顺序结构、分支结构的语句编写简、运用顺序结构、分支结构的语句编写简单的解决问题。单的解决问题。课程导入课程导入某某同学参加了学校体检同学参加了学校体检,医生告诉医生告诉他超重,需要加强运动,他了解到,他超重,需要加强运动,他了解到,运动心率如果控制到一定的范围,对运动心
2、率如果控制到一定的范围,对身体有好处,超出范围,对身体有损身体有好处,超出范围,对身体有损伤。伤。他想知道自己最适宜的心率!你能他想知道自己最适宜的心率!你能帮他计算最适宜的运动心率吗?帮他计算最适宜的运动心率吗?任务一任务一 利用赋值语句实现计算利用赋值语句实现计算该同学今年该同学今年1616岁,安静心率岁,安静心率7171最适宜运动心率最适宜运动心率=(220-220-年龄年龄-安静心率)安静心率)*(0.60.60.80.8)+安静心率安静心率 直接把他的年龄与安静心率的数值代入直接把他的年龄与安静心率的数值代入最适宜运动心率的公式中就可以算出最最适宜运动心率的公式中就可以算出最适宜运动
3、心率。适宜运动心率。第一步:分析问题第一步:分析问题第二步:设计算法(流程图)第二步:设计算法(流程图)第三步:编写程序第三步:编写程序第四步:调试运行第四步:调试运行思考:能否用上一节课学过的流程图表示出这一类问题的算法呢?活动活动1 1 计算最适宜的运动心率计算最适宜的运动心率 设计算法设计算法常量常量:在程序运行过程中始终:在程序运行过程中始终保持不变的量保持不变的量称之为常量称之为常量比如:比如:220,0.6220,0.6,圆周率,圆周率变量变量:在程序运行过程中在程序运行过程中允许允许改变的量称之为变量改变的量称之为变量比如:比如:low,highlow,highname=name
4、=马丽亚马丽亚活动一 心率流程图150.8150.8177.4177.4最适宜运动心率最适宜运动心率的的范围范围是是150.8-177.4150.8-177.4变量名赋值运算符值 变量的命名规则变量的命名规则1.1.由字母、数字、下划线组成,并且以字母或者下划线开头。由字母、数字、下划线组成,并且以字母或者下划线开头。例如:name1是合法变量名,而1name就不可以。2.2.区分大小写。区分大小写。例如:A和a是不同的变量名3.3.不能使用保留字。不能使用保留字。(即高级语言中已经定义过的字,比如if,else等)实战演练实战演练下列合法的变量名是下列合法的变量名是 ()A.34ab B.a
5、b34 C.A.34ab B.ab34 C.*abc D.ifabc D.if运算符与表达式运算符与表达式 Python运算符包括赋值运算符、算术运算符、关系运算符、逻辑运算符、位运算符、成员运算符和身份运算符。表达式是将不同类型的数据(常量、变量、函数)用运算符按照一定得规则连接起来的式子。算术运算符算术运算符表达式表达式说明说明+x+y加法运算-x-y减法运算*x*y乘法运算*x*yx的y次方/x/y除法运算/x/y两数相除向下取整%x%y取模运算算术运算符和算术运算符和算术运算表达式算术运算表达式除除:不管是整数除法还是小数除法,结果均为浮点型(有小数):不管是整数除法还是小数除法,结果
6、均为浮点型(有小数)整除整除:不管是整数除法还是小数除法,不管是整数除法还是小数除法,商取整数位,只商取整数位,只要有浮点型,结果就要有浮点型,结果就为浮点型为浮点型(小数)(小数)比较除和整除比较除和整除x=5y=3a=4b=2print(x+y)#结果为?print(x-y)#结果为?print(x*y)#结果为?print(x/y)#结果为?print(x/y)#向下去整结果为?print(x%y)#两数相除取余结果为?print(x*y)#5的3次幂结果为?print(a/b)#结果为浮点数?print(a%b)#取余结果为?print(a/b)#取整结果为?实例演练:实例演练:x=5
7、y=3a=4b=2print(x+y)#结果为 7print(x-y)#结果为2print(x*y)#结果为15print(x/y)#结果为1.6666666666666667 不同的机器浮点数的结果可能不同print(x/y)#向下去整结果为1print(x%y)#两数相除取余结果为2print(x*y)#5的3次幂结果为125print(a/b)#结果为浮点数2.0print(a%b)#取余结果为0print(a/b)#取整结果为2实例演练实例演练结果结果赋值语句 作用是计算赋值号作用是计算赋值号“=”右边表达式的值,然后把计算结果赋值给左边右边表达式的值,然后把计算结果赋值给左边的变量。
8、的变量。赋值语句是任何程序设计语言中最基本的语句。赋值语句是任何程序设计语言中最基本的语句。age=17print(age)运行结果:17n,m=4,3print(n,m)运行结果:4 3print(n)运行结果:5赋值语句赋值语句Python中的赋值语句较为灵活例如:a=b=c=1#数值1赋值给变量a,b,ca,b,c=1,2,3#数值1、2、3分别赋值给变量a,b,ca,b=b,a#交换a,b两个变量的值c+=a#等效于c=c+a练习:请将下列程序代码补充完整,并调试运行,实现该同学的最适心率计算。low=(220-)*0.6+#计算最适宜运动心率低值high=(220-)*0.8+#计算
9、最适宜运动心率高值print(low,high)#显示最适宜运动心率的范围设计算法low=(220-16-71)*0.6+71#计算最低适宜运动心率high=(220-16-71)*0.8+71#计算最高适宜运动心率print(low,high)#显示最适宜运动心率的范围编写程序最适宜心率因人而异每次都要修改程序很麻烦,可以怎样做呢?活动活动2 2 计算任意年龄与安静心率的最适宜运动心率计算任意年龄与安静心率的最适宜运动心率程序结束输入年龄 age输入安静心率 HRrest计算最适宜运动心率的低值low=(220-age-HRrest)*0.6+HRres计算最适宜运动心率的高值high=(1
10、10-age-HRrest)*0.8+HRrest输出最适宜运动心率的范围是 low-high程序的开始输入和输出语句输入和输出语句输入:输入:input()函数:从标准输入读入一行文本,默认的标准输入是键盘。输出输出:print()函数:向控制台输出一个或多个字符,例例1print(hell world,hello python,hello)print(18)print(10+8)print(10+8=,10+8)例例2myname=input(请输入myname:)print(hello,myname)运行结果:请输入myname:Justinhello Justin “hello”“he
11、llo”表示表示字符串,字符串,字符串就是字符串就是文本,文本,可以是可以是字字母、数字母、数字或或符号。符号。字符串与数字的区别在于字符串与数字的区别在于,字符串两端需加引号,字符串两端需加引号(或或“”“”),输出时原样显示引号中的内容。),输出时原样显示引号中的内容。练习:练习:参考上图的运行结果,将下列程序代码补充完整,并调试运行。age=float(input(请输入年龄=)#输入年龄#输入安静心率low=(220-age-HRrest)*0.6+HRrest#计算最适宜运动心率低值high=(220-age-HRrest)*0.8+HRrest#计算最适宜运动心率高值print()
12、#显示最适宜运动心率的范围HRrest=float(input(请输入HRrest=)最适宜的心率是:,low,high实战演练实战演练下列选项中属于字符串常量的是(下列选项中属于字符串常量的是()A Aab B.a+b C.1235 D.1235ab B.a+b C.1235 D.1235数据类型数据类型pythonpython提供了提供了整数(int)、浮点数(float)、字符串(str)等常见的数据类型。等常见的数据类型。可以利用一些函数,可以利用一些函数,把数据从一种类型转换成另一种类型。float()float():根据一个字符串或整数创建一个新的浮点数根据一个字符串或整数创建一个
13、新的浮点数(小数)小数)int()int():根据一个字符串或浮点数创建一个新的整数。根据一个字符串或浮点数创建一个新的整数。str()str():根据一个数(其他任何类型)创建一个新的字符串根据一个数(其他任何类型)创建一个新的字符串函函 数数作作 用用int(x)int(x)将 x 转换成整数类型float(x)float(x)将 x 转换成浮点数类型str(x)str(x)将 x 转换为字符串任务二任务二 利用分支语句实现分性别计算利用分支语句实现分性别计算思考思考如何修改程序可以实现根据性别输出结果呢?最适宜运动心率是有最适宜运动心率是有性别性别差异的,差异的,男男=(220-220-
14、年龄年龄-安静心率)安静心率)*(60%80%60%80%)+安静心率安静心率女女=(210-210-年龄年龄-安静心率)安静心率)*(60%80%60%80%)+安静心率安静心率1.gender=male:2.n=2103.low=(n-age-HRrest)*0.6+HRrest4.high=(n-age-HRrest)*0.8+HRrest5.最适宜运动心率的范围是:low-high分支语句分支语句程序中需要根据不同的条件判断来决定程序执行的走向时,可以使用程序中需要根据不同的条件判断来决定程序执行的走向时,可以使用ifif分支语句实现,分支语句实现,格式如下格式如下单分支ifif 条件
15、:语句或语句组双分支ifif 条件:语句或语句组Aelse:else:语句或语句组B 条件表达式可以是一个单纯的布尔值布尔值或变量变量,也可以是比较表达式比较表达式、逻辑表达式逻辑表达式.如果表达式的值为真,则执行if后面的语句块,否则(即如果表达式的值为假),执行else后面的语句块。这种形式就如同汉语里的“如果就,否则就”。实战演练实战演练v=float(input(“请输入速度:”)if v=7.91:print(“飞船成功飞行!”)else:print(“飞船不能升空!”)例:分支程序用来判断飞船是否能够升空。当飞船速度v=7.91,输出“飞船成功飞行!”,否则输出“飞船不能升空!”。
16、注意格式注意格式(空格、空格、缩缩进等进等)关系运算符关系运算符分支语句的条件分支语句的条件“v=7.91v=7.91”表达式,一般称表达式,一般称为为关系表达式关系表达式。关系表达式是。关系表达式是用用关系运算符关系运算符连接起来的式子。常见的关系运算符有:连接起来的式子。常见的关系运算符有:当当关系表达式关系表达式成立时,值为真(成立时,值为真(truetrue),不成),不成立时,值为假(立时,值为假(FalseFalse)例如:)例如:9=7.99=7.9,其值为True;23=24,其值为False。运算符运算符表达式表达式说明说明=a=b等于,比较对象是否相等!=或或 a!=ba
17、b不等于,比较两个对象是否不相等 a b大于,比较a是否大于b a=a=b大于等于,比较a是否大于或者等于b=a=b小于等于,比较a是否小于或者等于b实例演练:实例演练:a=3b=2c=2print(a=b)#Falseprint(a!=b)#Trueprint(a b)#Trueprint(a b)#Trueprint(a=b)#Trueprint(c=b)#True实战演练实战演练将下列代码补充完整,并调试运行将下列代码补充完整,并调试运行age=float(input(“age=float(input(“请输入年龄请输入年龄=”)=”)HRrest=float(input(“HRrest
18、=float(input(“请输入安静心率请输入安静心率=”)=”)gender=input(“gender=input(“请输入请输入malemale或或famale:”)famale:”)if if :n=220n=220else:else:n=210n=210low=(n-age-HRrest)low=(n-age-HRrest)*0.6+HRrest0.6+HRresthigh=(n-age-HRrest)high=(n-age-HRrest)*0.8+HRrest0.8+HRrestprint(“print(“最适宜运动的心率是最适宜运动的心率是:”,low,”,high):”,lo
19、w,”,high)gender=malegender=maleage=float(input(请输入age=)HRrest=float(input(请输入HRrest=)EHR=float(input(请输入EHR=)#输入运动后的心率gender=input(请输入male or female:)if gender=male:n=220else:n=210low=(n-age-HRrest)*0.6+HRresthigh=(n-age-HRrest)*0.8+HRrestif EHRlow:print(您的运动心率太低,请适当提高)elif low=EHR=high:print(您的运动心率
20、正好,请保持)else:print(您的运动心率太高,请适当降低)input(运行完毕,请按回车键退出.)拓展练习拓展练习 对以上程序进行修改,使其可以输入年龄、安静心率和运动后心率,并能依据最适宜运动心率公式输出反馈结果,如“您的运动心率太低,请适当提高”“您的运动心率正好,请保持”“您的运动心率太高,请适当降低”。拓展知识:分支语句拓展知识:分支语句-多分支选择语句多分支选择语句if if 条件表达式条件表达式1:1:语句块语句块1 1elif elif 条件表达式条件表达式2:2:语句块语句块2 2elif elif 条件表达式条件表达式3:3:语句块语句块3 3else:else:语句
21、块语句块n n实战演练实战演练例例1 1:下表所示的感冒指数,根据输入的感:下表所示的感冒指数,根据输入的感冒指数,输出该指数所对应的含义。请根冒指数,输出该指数所对应的含义。请根据学过的知识编写代码。(程序的代码如据学过的知识编写代码。(程序的代码如下)下)num=int(input(num=int(input(请输入感冒指数:请输入感冒指数:)if 0=num=6:if 0=num=6:print(print(少发少发)elif 7=num=19:elif 7=num=19:print(print(较易发较易发)elif 20=num=30:elif 20=num=30:print(pri
22、nt(易发易发)elif 31=num=61:elif 31=num=61:print(print(极易发极易发)else:else:print(print(指数值不正确指数值不正确)例例2.2.生活中各地都有风景区、游乐场需要门票定价,根据游客年龄我们可以生活中各地都有风景区、游乐场需要门票定价,根据游客年龄我们可以这样规定:小于这样规定:小于3 3岁为免费,小于等于岁为免费,小于等于1818岁票价为岁票价为3030元,大于元,大于1818岁票价为岁票价为6060元。元。你能根据这些规则设计程序进行门票定价吗?你能根据这些规则设计程序进行门票定价吗?age=int(input(age=int
23、(input(请输您的年龄请输您的年龄:):)if age 3:if age 3:price=0 price=0elif age 18:elif age 18:price=30 price=30else:else:price=60price=60print(print(您的门票价格为:您的门票价格为:+str(price)+str(price)+元。元。)调试运行调试运行错误的原因分析:没有使用代码缩进。小小提示小小提示Python中,不像其他程序设计语言采用大括号“”分隔代码块,而是采用代码缩进和冒号“:”区分代码之间的层次。缩进可以使用空格或者TAB键实现。其中,使用空格时,通常情况下采用4个空格作为一个缩进量,而使用TAB键作为一个缩进量,通常情况下建议使用空格进行缩进。在Python中,行尾的冒号和下行的缩进表示一个代码块的开始,而缩进结束,则表示一个代码块的结束。课堂小结课堂小结 常量、变量(关系)运算符、(关系)表达式(值)常量、变量(关系)运算符、(关系)表达式(值)数据类型数据类型float()float()、int()int()、str()str()赋值语句赋值语句 变量变量=表达式表达式 输入语句输入语句input()input()输出语句输出语句print()print()