内容正文:
if语句的应用
粤教版(2019) 信息技术(高中)(必修一)
4.3运用选择结构描述问题求解过程
1
目
标
单分支if语句
双分支if...else语句
实战练习
2
任务一 巩固旧知
1.(单选)下面是小新在某道编程题中定义的变量,哪个变量名是不合法的( )
A.apple_Prince3 B._math C.3apple D.APPLE E.a2
变量是指在程序运行过程中其值可以发生变化的量。
变量名由字母(A~Z,a~z)、数字(0~9)、下划线组成,并且其第一个字符必须是字母或下划线,不能是数字;
字母大小写是有区别的,如”A2”和”a2”是两个不同的变量名。
3
任务一 巩固旧知
2.以下四个变量是否有误?请将变量相对应的数据类型填入横线中
a=5 b=’5’ c=5.2 d=欢迎
string(字符串型) float(浮点型) int(整型)
int(整型):整数。
float(浮点型):由整数部分与小数部分组成,如数字2.5。
string(字符串型):是以单引号或双引号括起来的文本,如‘abc’、"请输入你的名字"等。
int
string
float
string
“欢迎”
4
任务一 巩固旧知
数据类型的转换函数:
int()将内容转换为整数
float()将内容转换为浮点数
str()将内容转换为字符串
Python程序 执行结果
a=input("请输入年龄:")
b=a+10
print("最终年龄为:")
print(b)
//从键盘输入一个数据,赋值给变量a;
//输出字符串”最终年龄为:”
//输出变量b的值
a=int( input("请输入年龄:") )
3.请同学们解读以下程序,程序能顺利执行吗?调试一下,并写出执行结果。
最终年龄为:
26
在线编程网址 https://www.sciclass.cn/python
5
单分支if语句的格式
if 条件表达式:
语句组
探索新知 单分支if语句
编程实现:
age >= 18
print('已成年')
N
Y
程序执行流程图
print('已成年')
age = int(input(“请输入你的年龄:”))
if age >= 18 :
使用选择结构if语句来实现判断和选择。
if后面加空格后接条件表达式,条件表达式后一定要加冒号:
语句组前要有明显的缩进(空格,通常以1个Tab键即4个空格为一个缩进单位)。
同一语句组的多行代码严格遵循相同的缩进(即空格个数相同)
语句组可以是一行代码,也可以是多行代码。
6
双分支if语句的格式为:
if 条件表达式:
语句组A
else:
语句组B
探索新知 双分支if语句
编程实现:
age >= 18
print('已成年可上网')
N
Y
程序执行流程图
age = int(input(“请输入你的年龄:”))
两种完全对立也就是非A即B的判断选择
print('小朋友回家写作业')
else :
print('小朋友回家写作业 ')
if...else要对齐
else后直接加冒号 :
同一语句组的多行代码严格遵循相同的缩进(即空格个数相同)
语句组可以是一行代码,也可以是多行代码。
7
if age >= 18 :
print('已成年可上网')
任务二 单分支IF语句的应用
分析问题
项目小组成员在购物网站上了解到某种笔记本搞优惠活动,一次购买6本以上(含6本)10本以下(含10本)打9折,一次购买11本以上(包含11本)打8折。该怎样根据笔记本的单价和购买数量编写程序计算总费用?
变量:购买数量为n本,单价为p元
折扣系数为j,总费用为s元。
开始
输入n和p的值
6≤n≤10
N
Y
设计算法
j=1.0
j=0.9
j=0.8
n≥11
N
Y
s=n×p×j
输出s的值
结束
条件:n<6,则j=1.0;
6≤n≤10,则j=0.9;
n≥11,则j=0.8;
计算:总费用s=n×p×j
8
任务二 单分支IF语句的应用
编写程序
n=int(input("请输入购买数量(多少本):"))
p=float(input("请输入笔记本的单价(多少元):"))
j=1.0
if n>=6 and n<=10:
j=0.9
if n>=11:
j=0.8
s=n*p*j
print("总费用为:",s,"元")
调试程序
单价(元/本) 数量(本) 总费用(元)
15 5
15 6
15 10
15 11
使用编写的程序,快速完成下表内容
75.0
81.0
135.0
132.0
提示: if 条件表达式 and 条件表达式:
9
任务三 双分支IF语句的应用
编程实现:用户输入的用户名name和密码pwd,若用户名和密码都正确则提示“登录成功,欢迎您”,否则提示“登录失败,用户名或密码错误”。(正确用户名是admin,密码是abc123)
分析问题
设计算法
编写程序
调试程序
变量:name、pwd
条件:name==’admin’ and pwd==’abc123’
开始
输入name和pwd
name=='admin' and pwd=='abc123'
N
Y
输出登录失败
输出登录成功
结束
name=input("请输入用户名:")
pwd=input("请输入密码:")
if name=='admin' and pwd=='abc123':
print("登录成功,欢迎您")
else:
print("登录失败,用户名或密码错误")
10
任务四 项目活动
请编写程序,根据输入的身高体重计算体型的BMI值,并根据BMI值判断属于哪种类型
分析问题
设计算法
编写程序
调试程序
变量、处理计算、条件
自然语言、流程图
体重(kg) 身高(m)
BMI范围 类型
BMI<18.5 偏瘦
18.5≤BMI<24.0 正常
BMI≥24.0 过重
11
任务四 项目活动
分析问题
变量:体重为w千克,身高为h元,
BMI值。
开始
输入w和h的值
BMI<18.5
N
Y
设计算法
BMI=w/h**2
输出偏瘦
输出正常
18.5≤BMI<24.0
Y
结束
条件:BMI<18.5,则输出偏瘦;
18.5≤BMI<24.0,则输出正常;
BMI≥24.0,则输出过重;
计算:BMI=w/h**2
N
BMI≥24.0
N
输出过重
Y
12
任务四 项目活动
编写程序
w=float(input("请输入您的体重(千克):"))
h=float(input("请输入您的身高(米):"))
BMI=w/h**2
if BMI<18.5:
print('偏瘦,多吃点!')
if BMI>=18.5 and BMI<24.0:
print('标准身材!')
if BMI>=24.0:
print('过重啦!')
调试程序
体重(千克) 身高(米) 运行结果
42 1.60
55 1.62
75 1.75
使用编写的程序,快速完成下表内容
偏瘦
标准身材
过重啦
13
IF语句的嵌套
请编写程序,用户登录成功后,才能使用计算体型BMI值,判断属于哪种类型的功能。
name=input("请输入用户名:")
pwd=input("请输入密码:")
if name=='admin' and pwd=='abc123':
print("登录成功,欢迎您")
else:
print("登录失败,用户名或密码错误")
w=float(input("请输入您的体重(千克):"))
h=float(input("请输入您的身高(米):"))
BMI=w/h**2
if BMI<18.5:
print('偏瘦,多吃点!')
if BMI>=18.5 and BMI<24.0:
print('标准身材!')
if BMI>=24.0:
print('过重啦!')
14
双分支if语句的格式为:
if 条件表达式:
if 条件表达式:
语句组A
else:
语句组B
else:
语句组C
IF语句的嵌套-注意事项
每一对if...else要对齐
同一语句组的多行代码严格遵循相同的缩进(即空格个数相同)
空4格
空8格
15
IF语句的嵌套
使用if语句的嵌套方法,修改以下程序中的if语句。
w=float(input("请输入您的体重(千克):"))
h=float(input("请输入您的身高(米):"))
BMI=w/h**2
if BMI<18.5:
print('偏瘦,多吃点!')
if BMI>=18.5 and BMI<24.0:
print('标准身材!')
if BMI>=24.0:
print('过重啦!')
else:
if BMI<24.0:
print('标准身材!')
else:
print('过重啦!')
16
练习
根据用户的成绩输出对应的等级?
(90分及以上为A,70-89分为B,60-69分为C,60分以下为E)
s=float(input("请输入您的成绩(分):"))
if s>=90:
print('A')
else:
if s>=70:
print('B')
else:
if s>=60:
print('C')
else:
print('D')
17
课堂涉及基础知识点
算术运算符
+ - * / % ** //
加 减 乘 除 求余 幂运算 整除
>>> 13%5
3
>>> 13//5
2
>>> 2**4
16
逻辑运算符:and(与)、or(或)、not(非)。
关系运算符
>(大于) >=(大于等于) <(小于) <=(小于等于)
==(等于) !=(不等于)
18
课堂小结
IF语句的应用
if 条件表达式 :
语句块A
if 条件表达式:
语句块A
else:
语句块B
19
课堂小结
IF语句的应用
if 条件表达式 :
语句块A
if 条件表达式:
语句块A
else:
语句块B
if 条件表达式:
if 条件表达式:
语句块A
else:
语句块B
else:
语句块C
20
$$