版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
3.5实训3.5.1实训1【分支】一、实训目的1.熟练使用Python的常用运算2.利用if分支语句编写Python代码二、单元练习 (一)选择题1.下列选项中,当x为大于1的奇数时,运算结果为0的表达式是(C)A.x%2==1 B.x/2C.x%2!=0 D.x%2==02.在嵌套使用if语句时,Python语言规定else总是(A)A.和之前与其具有相同缩进位置的if相匹配;B.和之前与其最近的if相匹配;C.和之前的第一个if配对;D.和之前与其最近且不带else的if配对。3.下列Python语句正确的是
(D)A.min
=
x
if
x
<
y
else
y
B.max
=
x
>
y
?
x
:
y
C.if
(x
>
y)
x
D.if
1>2:
print(“hello”)
(二)填空题1.写出下列表达式的值,设a=3,b=4,c=5:表达式值a+b>c&&b==cFalse!(a>b)&&!c||1Falsea<c&&c<bFalsea<c<bFalsea<b||c<bTrue2.在算术运算符(+、-、*、/、%)、关系运算符(==、!=、>、<、>=、<=)、逻辑运算符(and、or、not)和赋值运算符(=、+=、-+、*=、/=、%=、**=、//=)中,运算优先级最高的运算符是**指数,最低的运算符not、or、and。3.判断一个字符是数字字符的条件表达式isdigit。4.判断一个字符是字母的条件表达式isalnum。5.在Python语言中,用true表示逻辑“真”,用false表示逻辑“假”。三、实训任务任务1:【猜字游戏】编写一个猜字游戏,要求随机输入一个0-10的数字,提供1次猜字机会。程序编写于下方importrandomsecret=random.randint(0,10)print("请你猜一猜从1到10的数字")print("你只有一次机会")guess=eval(input("请输入你猜的数字:"))ifguess<secret:print('太小了')elifguess>secret:print('太大了')else:print('答对了')print('正确答案是:'+str(secret))任务2:【学生成绩等级评定】根据学生考试成绩,确定成绩等级,成绩与等级的对应关系如下表所示。成绩(score)等级(level)score>=90A80<=score<90B70<=score<80C60<=score<70DScore<60E程序编写于下方score=eval(input('请输入你的考试成绩:'))
ifscore>=90:
level='A'
print('你的考试等级为:'+level)
elif(score>=80)and(score<90):
level='B'
print('你的考试等级为:'+level)
elif(score>=70)and(score<80):
level='C'
print('你的考试等级为:'+level)
elif(score>=60)and(score<70):
level='D'
print('你的考试等级为:'+level)
else:
level='E'
print('你的考试等级为:'+level)任务3:【输入字符判断】键盘输入一个字符,判断该字符是数字、字母、空格还是其他。程序编写于下方word=input('请输入你的字符:')
ifword.isdigit():
print('你输入的是数字')
elifword.isalpha():
print('你输入的是字母')
elifword.isspace():
print('你输入的是空格')
else:
print('你输入的是其他')任务4:【身体质量指数判断】身体质量指数(BMI)是指用体重除以身高的平方得出的数字,它是目前国际常用的衡量人体胖瘦程度以及是否健康的一个标准,具体如下。BMI值<18.518.5~24.925.0~27.9>27.9身体情况消瘦正常超重肥胖程序编写于下方high=eval(input('请输入你的身高:'))
wight=eval(input('请输入你的体重:'))
bmi=wight/(high**2)
ifbmi<18.5:
print('bmi='+str(bmi))
print('偏瘦')
elif(bmi>=18.5)and(bmi<=24.9):
print('bmi='+str(bmi))
print('正常')
elif(bmi>=25)and(bmi<=27.9):
print('bmi='+str(bmi))
print('偏胖')
else:
print('bmi='+str(bmi))
print('肥胖')任务5:【企业发放奖金判断】企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?程序编写于下方i=eval(input('Pleaseinputprofitsofthemonth:'))
ifi<=100000:
money=i*0.1
elif(i>100000)and(i<=200000):
money=100000*0.1+(i-100000)*0.075
elif(i>200000)and(i<=400000):
money=100000*0.1+100000*0.075+(i-200000)*0.05
elif(i>400000)and(i<=600000):
money=100000*0.1+100000*0.075+200000*0.05+(i-400000)*0.03
elif(i>600000)and(i<=1000000):
money=100000*0.1+100000*0.075+200000*0.05+200000*0.03+(i-600000)*0.015
else:
money=100000*0.1+100000*0.075+200000*0.05+200000*0.03+400000*0.015+(i-1000000)*0.001
print('Thebonusis:'+str(money))任务5:【月份判断】使用if结构写一个程序,判断输入的月份应该有多少天。(2月定为28天)。程序编写于下方month=input('请输入月份(例:一月):')
if(month=='一月'):
print(str(month)+'应该有31天')
elif(month=='二月'):
print(str(month)+'应该有28天')
elif(month=='三月'):
print(str(month)+'应该有31天')
elif(month=='四月'):
print(str(month)+'应该有30天')
elif(month=='五月'):
print(str(month)+'应该有31天')
elif(month=='六月'):
print(str(month)+'应该有30天')
elif(month=='七月'):
print(str(month)+'应该有31天')
elif(month=='八月'):
print(str(month)+'应该有31天')
elif(month=='九月'):
print(str(month)+'应该有30天')
elif(month=='十月'):
print(str(month)+'应该有31天')
elif(month=='十一月'):
print(str(month)+'应该有30天')
elif(month=='十二月'):
print(str(month)+'应该有31天')四、拓展任务拓展任务1:【验证码】一般网站在登录时,都会进行“验证码”输入。在输入验证码字符时,无论用户输入的是大写字母还是小写字母,验证时都会忽略大小写的差异,认为是相同的字符。这说明系统已经对验证码中的字符和用户输入的字符进行了大小写转换,然后进行匹配。那么这种转换是如何实现的?请编程实现“从键盘输入一组字符,无论大小写,都转换成小写形式输出”。程序编写于下方string=input('Pleaseinputyourtext:')
print(string.lower())拓展任务2:【商品促销】某淘宝商场采用购物打折的方式进行促销。具体促销方式如下:购买金额折扣1000元及以上九折2000元及以上八折3000元及以上七折请编写程序,当输入顾客实际购物金额,计算并输出优惠价。程序编写于下方money=eval(input('请输入你的购物金额:'))
if(money>=1000)and(money<2000):
level=0.9
cash=money*level
print('折后金额为:'+str(cash))
elif(money>=2000)and(money<3000):
level=0.8
cash=money*level
print('折后金额为:'+str(cash))
else:
level=0.7
cash=money*level
print('折后金额为:'+str(cash))拓展任务3:【闰年】输入一个年份,求它是否是闰年?闰年的条件是:能被4整除不能被100整除或者能被400整除(y%4==0andy%100!=0ory%400==0)程序编写于下方year=eval(input('请输入年份:'))
while(1):
ifyear>=1000andyear<=9999:
if(year%4==0andyear%100!=0)or(year%100==0):
print('该年为闰年')
else:
print('该年不是闰年')
break
else:
year=eval(input('请输入正确年份:'))拓展任务4:【月份判断】使用if结构写一个程序,判断输入的月份应该有多少天。(2月根据是否是闰年判断是否28天还是29天)。程序编写于下方defJudgeYear(year):
flag=False
if(year%4==0andyear%100!=0)or(year%100==0):
flag=True
print('该年为闰年')
returnflag
defrestr(string,p,c):
new=[]
forsinstring:
new.append(s)
new[p]=c
return''.join(new)
Month={'01':31,'02':28,'03':31,'04':30,'05':31,'06':30,'07':31,
'08':31,'09':30,'10':31,'11':30,'12':31}
date=input('请输入年月(例2018.01):')
iflen(date)==6anddate[5]!="0":
date+=date[5]
date=restr(date,5,'0')
ifJudgeYear(eval(date[0:4])):
Month['02']=29
print('本月应该有%d天'%Month[date[5:7]])3.5.2实训2【循环】一、知识点清单1、掌握while循环语句使用方法2、掌握for循环语句使用方法3.能够利用流程控制语句解决实际编程问题二、单元练习(一)填空题1.如果循环无休止的进行下去,这种状态称为死循环。2.使用循环输出1234568910,补充下面的填空count=1Whilecount<=10:
ifcount!=7:
passprint(count)
count+=13.循环可以嵌套3-5层。三、实训任务任务1:【猜字游戏】编写一个猜字游戏,要求随机输入一个0-100的数字,提供6次猜字机会。程序编写于下方importrandom
key=random.randint(1,10)
c=0
c2=6
whilec<3:
word=eval(input('猜一猜1-10的数字,请输入答案,还剩{}次机会:'.format(c2-c)))
c+=1
ifkey>word:
print('太小了')
elifkey<word:
print('太大了')
else:
print('你在第{}次答对了'.format(c))
break
ifkey!=word:
print('很遗憾你猜错了')
print('正确答案是:'+str(key))任务2:【统计字符分类】输入一行字符,统计出其中英文字母、空格、数字以及其他字符的个数,并打印出来。程序编写于下方word=input('请输入你的文本:')
num_alpha=0
num_digit=0
num_space=0
num_other=0
foriinword:
ifi.isalpha():
num_alpha+=1
elifi.isdigit():
num_digit+=1
elifi.isspace():
num_space+=1
else:
num_other+=1
print('该字符串共有{0}个字母,{1}个数字,{2}个空格,{3}个其他字符'.format(num_alpha,num_digit,num_space,num_other))任务3:【水仙花数】输出所有的“水仙花数”。“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153=13+53+33,该数即为水仙花数。程序编写于下方num=0
foriinrange(100,1000):
c=i%10
b=i//10%10
a=i//100
ifa**3+b**3+c**3==i:
print(str(i))
num+=1
print('共{}个'.format(num))任务4:【用数字组数】用数字1、2、3、4进行组数,能组出多少个互不相同且不重复数字的三位数?并打印出来。程序编写于下方num=0
foriinrange(1,5):
forjinrange(1,5):
forkinrange(1,5):
if(i!=j)and(j!=k)and(i!=k):
print(i,j,k)
num+=1
print('共{}个'.format(num))任务5:【评委评分】分别利用while语句和for语句完成如下功能。某比赛有7个评委,选手的得分为这7个评委的评分总和,请编程实现统计功能。程序编写于下方while方式:Ssum=0
c=0
whilec<7:
score=eval(input('{}号评委请输入评分:'.format(c+1)))
Ssum=Ssum+score
c+=1
print('该选手得分为:{}'.format(Ssum))程序编写于下方for方式:Ssum=0
forcinrange(1,8):
score=eval(input('{}号评委请输入评分:'.format(c)))
Ssum=Ssum+score
print('该选手得分为:{}'.format(Ssum))任务6:【break语句和continue语句的使用】输入若干字符,对输入的英文字母原样输出,其他字符不输出,直到输入回车键时结束。程序编写于下方text=''
word=''
while1:
word=input('请输入文本:')
foriinword:
ifi.isalpha():
text=text+i
print(text)
text=''
ifword=='':
break四、拓展任务任务1:【韩信点兵】淮安民间传说着一则故事——“韩信点兵”。话说韩信带1500名兵士打仗,战死四五百人,于是韩信要求士兵们先后站3人一排,多出2人;站5人一排,多出4人;站7人一排,多出6人。韩信很快说出人数:1049。现在给你3个队伍的多出人数,分别为非负整数a,b,c,请计算军
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广东省信宜市高一化学上册期末考试模拟试卷【有一套】附答案
- 2026年安徽省明光市高一化学上册期末考试模拟检测卷及参考答案一套
- 2026年广东省普宁市高一化学上册期末考试模拟卷【突破训练】附答案
- 文明有礼从我做起小学主题班会课件
- 智能客服系统话术与服务流程规范手册
- 关爱他人友善为本小学五年级主题班会课件
- 2026年广东省四会市高一化学上册期末考试模拟考试卷及答案(有一套)
- 福建省莆田市莆田第二十五中学2024-2025学年高一下学期3月月考化学试题
- 2026年广东省雷州市高一化学上册期末考试模拟测试卷及参考答案(完整版)
- 2026年福建省邵武市高一化学上册期末考试模拟卷含答案【夺分金卷】
- 2026年国开电大机械设计基础形考能力提升试题附完整答案详解(夺冠)
- 2025年彭涟漪逻辑学试题及答案
- 2026年全国安全生产月安全生产知识课件
- 医疗技术风险处置与损害处置预案
- 小学一年级英语下册 Unit 5 We Are Special!与众不同的我们 教学设计
- 《超高压隔膜氢气压缩机技术要求》
- 2026年保密观知识竞赛题及完整答案详解(典优)
- 历年中考英语高频词汇汇编(真题800词版)
- 无缝钢管焊接安装技术规范
- ktv强电施工方案(3篇)
- 2026上半年广东广州市越秀区教育局招聘事业编制教师83人备考题库附参考答案详解(黄金题型)
评论
0/150
提交评论