(共43张PPT)
第二单元 编程计算
2.2 做出判断的分支
第一课时
教学目标
计算思维
了解顺序结构和分支结构的语句,掌握顺序结构和分支结构语句的一般格式和使用方法。
熟练应用条件表达式,掌握if语句的语法格式。
能用顺序结构和分支结构语句编写程序解决生活中的问题,提升逻辑思维能力,进一步体会算法及其思想。
学习重点
理解赋值、分支语句的工作原理;
掌握赋值、分支语句的格式和使用方法。
学习难点
能够使用赋值、分支语句解决实际问题。
小泽同学参加了学校体检,医生告诉他超重,需要加强运动,他了解到,运动心率如果控制到一定的范围,对身体有好处,超出范围,对身体有损伤。
他想知道自己最适宜的心率!
你能帮他计算最适宜的运动心率吗?
导
任务一 计算最适宜的运动心率
计算机解决问题的过程
分析问题
设计算法(流程图)
编写程序
调试运行
思考
用上节课学过的流程图表示出这一类问题的算法?
一
活动1 计算最适宜的运动心率
学
(220-16-71)x60%+71
(220-16-71)x80%+71
low,high
展
该同学今年16岁,安静心率71
最适宜运动心率=(220-年龄-安静心率)*(0.6~0.8)+安静心率
活动1 计算最适宜的运动心率
一、常量与变量
常量:
在程序运行过程中始终保持不变的量
例:220,0.6,圆周率π
变量:
在程序运行过程中允许改变的量
例:low,high
点
所有的常数都是常量
二、变量的命名规则
1.由字母、数字、下划线组成,并且以字母或者下划线开头。
name1、1name。
2.区分大小写。
例如:A和a是不同的变量名
3.不能使用保留字。
即高级语言中已经定义过的字,比如if,else等
点
实战演练1
下列合法的变量名是 ( )
A. 34ab B. ab34 C. *abc D. if
B
测
三、运算符与表达式
运算符:进行某种运算的标识符号,它标明对操作数所进行的运算。
表达式:由一个或多个操作数通过运算符组合而成。
算术运算符 表达式 说明 举例
+ x + y 加:加法运算 2+3
- x - y 减:减法运算 5-3
* x * y 乘:乘法运算 3*2
** x**y 幂:x的y次方 4**2
/ x / y 除:除法运算 3/2
// x // y 整除:两数相除向下取整 5//3
% x%y 取模:取模运算 5%3
学
除、整除、取模
点
7 ÷ 2 = 3.5 = 3 … 1
商
余数
除:/
7/2=3.5
整除://
7//2=3
取模:%
7%2=1
取模:保留余数
商
除:结果均为浮点型(取小数)
整除:取商的整数部分
赋值语句是任何程序设计语言中最基本的语句。
功能:将右边表达式的值赋值给左边
格式:变量=表达式
四、赋值语句
赋值语句中的“等号”是等号?
赋值号(即右边的值赋给左边的变量)
点
四、赋值语句
其中:
a=a+c 等同于a+=c
a=a*c等同于a*=c
a=a-c等同于a-=c
a=a/c等同于a/=c
点
五、编写、调试、运行
low=(220- _ - _ ) * 0.6 + _ #计算最低适宜运动心率
high=(220-_ - _ ) * 0.8 +_ #计算最高适宜运动心率
print(low,high) #显示最适宜运动心率的范围
最适宜心率因人而异每次都要修改程序很麻烦,可以怎样做呢?
点
课前复习
low=(220 - 16 - 71 ) * 0.6 + 71
high=(220 - 16- 71 ) * 0.8 + 71
print(low,high)
常量:220、16、71、0.6、0.8
变量:low、high
所有的常数都是常量
3**3
36/4
34//3
68//7.0
10%3
27
9.0
11
9.0
1
课前复习
第二单元 编程计算
2.2 做出判断的分支
第二课时
low=(220- 16 - 71 ) * 0.6 + 71
high=(220- 16 - 71 ) * 0.8 + 71
print(low,high)
最适宜心率因人而异,每次都要修改程序很麻烦,可以怎样做呢?
导
age
HRrest
HRrest
活动2 计算任意年龄与安静心率的最适宜运动心率
low=(220- age - HRrest ) * 0.6 + HRrest
high=(220- age - HRrest ) * 0.8 + HRrest
print(low,high)
活动2 计算任意年龄与安静心率的最适宜运动心率
程序结束
输入年龄 age
输入安静心率 HRrest
计算最适宜运动心率的低值low=(220-age-HRrest)*0.6+HRrest
计算最适宜运动心率的高值high=(220-age-HRrest)*0.8+HRrest
输出最适宜运动心率的范围是 low-high
程序的开始
学
一、输入和输出语句
input()——从键盘输入数据
print()——在屏幕上输出数据
学
输入
输出
一、输入和输出语句
点
1.input()括号中的内容起提示作用,如果原样显示在屏幕上,需要加引号’’或“”。
2.字符串:两端需加引号,可以是字母、数字、符号、文字。
input()语句从键盘上接收的数据是字符串形式
3.print()输出时原样显示引号中的内容。
‘aabb’ “aabb”
‘123456’ “123456”
‘!@#$’ “!@#$”
‘嘿嘿’ “嘿嘿”
二、数据类型
点
数据类型 float(浮点数) int(整数) str(字符串)
例子 2.5、105.3 23、108 ‘张三’、”Bob”
变量的值有3种类型
二、数据类型
点
函数 int( ) float( ) str( )
例子 a=18.5 a=int(18.5) print(a) b=’13.5’ b=float(‘13.5’) print(b) c=33
c=str(33)
print(c)
程序运行时通过键盘输入的内容都是字符串形式——>转换——>数据类型转换函数
age=int(input("请输入年龄=")) #意味着必须输入一个整数
HRrest=float(input("请输入安静心率=")) #意味着必须输入一个浮点数(小数)
巩固提升1
下列选项中属于字符串常量的是( )
A.ab B. a+b C."1235" D.1235
C
测
有单引号或双引号
巩固提升2
整型变量x中存放了一个两位数,要将这个两位数的个位数字和十位数字交换位置,例如,13变成31,正确的Python表达式是( )
A.(x%10)*10+x//10 B. (x%10)//10+x//10
C.(x//10)%10+x//10 D.(x%10)*10+x%10
A
测
巩固提升
测
a=18.5
a=int(18.5)
print(a)
b=’13.5’
b=float(‘13.5’)
print(b)
c=33
c=str(33)
print(c)
18
13.5
“33”/’33’
课堂小结
结
33three
_my_name_
print
hi@
任务二 利用分支语句实现分性别计算
如何修改程序可以实现根据性别输出结果呢?
最适宜运动心率是有性别差异的
男=(220-年龄-安静心率)*(60%~80%)+安静心率
女=(210-年龄-安静心率)*(60%~80%)+安静心率
学
学
任务二 利用分支语句实现分性别计算
是否男性
n=210
(n-age-HRrest)x60%+HRrest
(n-age-HRrest)x80%+HRrest
low,high
三、分支语句
if分支语句——>根据不同的条件判断来决定程序执行的走向
双分支
if 条件:
语句或语句组A
else:
语句或语句组B
点
单分支
if 条件:
语句或语句组
冒号不要忘记
注意缩进
四、关系表达式
当成绩“score>=60” 时,输出“成绩合格“;否则输出“成绩不合格”。
v=float(input(“请输入成绩:”))
if score>=60 :
print(“成绩合格”)
else:
print(“成绩不合格”)
input("运行完毕,请按回车键退出...")
学
v=float(input(“请输入成绩:”))
如果 score>=60 :
输出(“成绩合格”)
否则:
输出(“成绩不合格”)
input("运行完毕,请按回车键退出...")
四、关系表达式
含义:用关系运算符连接起来的式子
举例:v>=7.91
关系运算符 == > >= < <= !=
含义 等于 大于 大于等于 小于 小于等于 不等于
成立——值为真(true),不成立——值为假(False)
点
巩固提升3
请判断下列关系表达式的值
测
9>=7.9
True
23==24
False
4>=π>=3
True
“hello”==“hi”
False
对应ASCII值进行比较
A可以连续使用
巩固提升4
age=float(input(”请输入年龄=”))
HRrest=float(input(”请输入安静心率=”))
gender=input(”请输入男或女:”)
if gender==”男”:
n=220
else:
n=210
low=(n-age-HRrest)*0.6+HRrest
high=(n-age-HRrest)*0.8+HRrest
print(”最适宜运动的心率是:”,low,”~”,high)
测
将下列代码补充完整,并调试运行
五、代码格式
错误原因:没有使用代码缩进。
点
Python中,不像其他程序设计语言采用大括号“{}”分隔代码块,而是采用代码缩进和冒号“:”区分代码之间的层次。
缩进可以使用空格或者TAB键实现。其中,使用空格时,通常情况下采用4个空格作为一个缩进量,而使用TAB键作为一个缩进量,通常情况下建议使用空格进行缩进。在Python中,行尾的冒号和下行的缩进表示一个代码块的开始,而缩进结束,则表示一个代码块的结束。
五、代码格式
点
六、多分支语句
if 条件表达式1:
语句块1
elif 条件表达式2:
语句块2
elif 条件表达式3:
语句块3
…
else:
语句块n
点
else if——>elif
生活中各地都有风景区、游乐场需要门票定价,根据游客年龄我们可以这样规定:小于3岁为免费,小于等于18岁票价为30元,大于18岁票价为60元。你能根据这些规则设计程序进行门票定价吗?
age=int(input("请输您的年龄:"))
if age < 3:
price = 0
elif age < 18:
price = 30
else:
price = 60
print("您的门票价格为:"+str(price)+ "元。")
巩固提升5
测
巩固提升6
根据输入的感冒指数,输出该指数所对应的含义。
num=int(input("请输入感冒指数: "))
if 0<=num<=6 :
print("少发")
elif 7<=num<=19:
print("较易发")
elif 20<=num<=30:
print("易发")
elif 31<=num<=61:
print("极易发")
else:
print("指数值不正确")
测
输入三角形3条边的边长(为简单起见,假设这3条边可以构成三角形),计算三角形的面积。提示:三角形面积= sqrt(h(h-a)(h-b)*(h-c)),其中,a、b、c是三角形3条边的边长,h是三角形周长的一一半。
import math
a = float(input("请输人三角形的边长a:"))
b = float(input("请输人三角形的边长b:"))
c = float(input("请输人三角形的边长c:"))
h=(a+b+c)/2 #三角形周长的一半
area = math. sqrt(h* (h-a) *(h-b)* (h-c)); #三角形面积
print(str. format("三角形三边分别为:a= {0},b= ({1},c={2}", a, b, c))
print(str. format("三角形的面积= {0}", area))
打印结果
请输入三角形的边长a:3
请输入三角形的边长b:4
请输入三角形的边长c:5
三角形三边分别为:a= 3.0,b= 4.0,c=5.0
三角形的面积= 6.0
巩固提升7
测
巩固提升
测
关系运算符 == > >= < <= !=
含义 等于 大于 大于等于 小于 小于等于 不等于
9>=7.9
True
23!=24
True
4>=π>=3
True
“hello”==“hi”
False
课堂小结
结
巩固提升
测
1.Python表达式a==b中“==”表示的意思是( )
A. 交换“==”左右两边变边的值
B. 把“==”右边变量的值赋值给左边变量
C.把“==”左边变量的值赋值给右边变量
D. 判断“==”左右两边的值是否相等
2.某小区开通了刷脸进门方式:其算法中验证对象是否正确的代码如下所示,则以下流程图与内容匹配的是( )
刷脸结果:识别为1,否则为其他
if(face==1):
print(”面部识别成功,门已开”)
else:
Print(“面部识别错误,无法开门”)
D
B
好好学习
天天向上