教学视频-->>
任务1 简单if语句
要求:
1、输入 3 个数值,输出其最小值。
2、必须使用 if...else 语句。
3、程序保存到:s7t1.py。
4、程序执行效果:
输入三个数值:23,55,-9
23,55,-9中的最小值为-9
【参考与提示】
1、input 函数返回的是字符串(无论输入什么数据)。如输入 “23,55,-9”,则函数的返回值是 “23,55,-9”。要得到输入的三个数值,可使用 eval 函数。如 eval ("23,55,-9") 的返回值为 (23,55,-9)。
2、运算符 “>” 或 “<” 可比较数值大小。
求解思路:假定求 m,n,k 的最小值。
1、先将 m,n的较小者赋给x。
2、如果 k<x,则将k的值赋给x。
要求:
1、输入 3 个数值,输出其最小值。
2、必须使用 if 语句(不能使用 else 子句)。
3、程序保存到:s7t1.py。
4、程序执行效果:
输入三个数值:23,55,-9
23,55,-9 中的最小值为-9
【参考与提示】
1、input 函数返回的是字符串(无论输入什么数据)。如输入 “23,55,-9”,则函数的返回值是 “23,55,-9”。要得到输入的三个数值,可使用 eval 函数。如 eval ("23,55,-9") 的返回值为元组 (23,55,-9)。
2、运算符 “>” 或 “<” 可比较数值大小。
求解思路:假定求 m,n,k 的最小值。
1、先假定 m 的值较小:x=m。
2、如果 n<x,则将 n 的值赋给 x (使用 if 语句)。
3、如果 k<x,则将 k 的值赋给 x (使用 if 语句)。
任务2 if…else语句的使用
要求:
1、程序运行时输入一个正整数,判断这个整数是奇数还是偶数。
2、必须使用 if...else 语句。
3、程序保存到:s7t2.py
4、程序执行效果 1:
输入一个正整数:2024
2024是偶数
5、程序执行效果 2:
输入一个正整数:2023
2023是奇数
【参考与提示】
关联知识点:
1、if...else 语句语法格式:
if A:
B
else:
C
作用:A为真执行语句B,否则执行语句C。
2、运算符 "%"可计算两个数数值相除的余数。
任务 3 if...elif...else语句的使用
要求:
1、程序运行时输入一个字符串。如果字符串未包含英文单引号则输出 "None";如果字符串包含英文单引号但不匹配则输出"NoMatch"。否则输出 "Match"。
2、使用if...elif...else 语句。
3、程序保存到:s7t3.py
4、程序执行效果:
输入字符串:Practice' makes perfect
NoMatch
【参考与提示】
1、在if...elif...else 语句中,elif 子句可以多次使用;而 else 子句是最后一个子句,只能使用最多一次。
2、利用字符串的内置函数 count 可以统计单引号出现的次数。如果出现的次数是正偶数,则单引号是匹配的。
任务4 if语句的嵌套
要求:
1、程序运行时依次输入西瓜的纹理(A、B、C分别表示模糊、一般、清晰)、根蒂(A、B、C分别表示蜷缩、稍蜷、硬挺)、色泽(A、B、C分别表示青绿、乌黑、浅白)、触感(A、B分别表示软粘、硬滑)来判断西瓜的好坏。判断标准:
(1)纹理B,触感A:好瓜
(2)纹理C,根蒂A:好瓜
(3)纹理C,根蒂B,色泽A:好瓜
(4)纹理C,根蒂B,色泽B,触感B:好瓜
(5)其他情形:坏瓜
2、程序保存到:s7t4.py
3、程序执行效果1:
依次输入纹理,根蒂,色泽,触感:CABA
好瓜
4、程序执行效果2:
依次输入纹理,根蒂,色泽,触感:AABA
坏瓜
【参考与提示】
求解思路:
1、利用input函数得到输入的数字串s。
2、根据s[0]、s[1]、s[2]和s[3]的值,利用if语句进行判断输出。
要求:
1、程序运行时输入三角形的3条边长。
2、输出这个三角形是直角、锐角或钝角三角形。不能组成三角形则输出"ERROR"。
3、程序保存到:s7t4.py
4、程序执行效果1:
输入边长:1,2,3
ERROR
5、程序执行效果2:
输入边长:3,4,5
直角三角形
【参考与提示】
1、正数a,b,c能组成三角形 <=> 最大值小于另2个值之和。
2、设a为最大边,则最大角的余弦值的符号就是b*b+c*c-a*a的符号。该符号为正,则为锐角三角形。符号为负,则为钝角三角形。否则为直角三角形。
3、eval函数可将3个数值组成的字符串转换为数值。如:a,b,c=eval("3,4,5")。
求解思路:
1、由input函数得到输入的数值串。
2、由eval函数将数值串转换为3个数值。
3、求3个数值的最大值a,其他数值为b、c。
4、如果a>=b+c,不能组成三角形,输出ERROR。
5、计算最大解的余弦符号x=b*b+c*c-a*a
(1)x>0:为锐角三角形
(2)x<0:为钝角三角形
(3)x=0:为直角三角形
任务5 match语句的使用
要求:
1、程序运行时输入成绩([0,100]上的整数),输出成绩评定结果。不检查输入数据的有效性。评定方法:
成绩<60: C
60<=成绩<80: B
成绩>=80: A
2、必须使用match语句。
3、程序保存到:s7t5.py
4、程序执行效果1:
输入成绩:76
评定=B
5、程序执行效果2:
输入成绩:89
评定=A
【参考与提示】
求解思路:
1、利用input函数获得输入的数字串s。
2、利用match语句,将s逐一匹配case子句后的字符,输出评定结果。
结构化模式匹配是Python3.10引入的一项新特性,提供了一种更简洁、更具表达力的方式来处理基于数据结构的条件判断。其语法格式为:
match A:
case B1:
C1
……
case _:
D
根据A的值从上而下逐一匹配。如果存在匹配则执行对应的子句。否则执行D语句。
要求:
1、程序运行时依次输入点的横坐标和纵坐标,判断点的位置(第1象限、第2象限、第3象限、第4象限)。不考虑坐标轴上的点。
2、必须使用match语句。
3、程序保存到:s7t5.py
4、程序执行效果:
输入点的坐标:3,7
第1象限
【参考与提示】
求解思路:
1、利用 input 函数获得输入的数值串s。
2、利用 eval 将 s 转换为坐标 x,y。
3、计算 m=(x>0,y>0)。
4、利用 match 语句,将 m 逐一匹配 case 子句后的元组,输出判断结果。需匹配 (1,1)、(0,1)、(1,0) 和 (0,0) 四种情形。

