Python期末复习题:流程控制
admin
2024-02-03 00:22:35
0

Python期末复习题:流程控制

文章目录

  • Python期末复习题:流程控制
    • 一、成绩转换
    • 二、Leibniz公式计算圆周率
    • 三、输出回文素数
    • 四、输出该日期是这一年的第几天

一、成绩转换

请编写一个成绩转换程序。每次输入一个百分制的学生成绩,成绩大于或等于90且小于或等于100的输出为“A”,成绩大于或等于80且小于90的输出为“B”,成绩大于或等于70且小于80的输出为“C”,成绩大于或等于60且小于70的输出为“D”,成绩小于60的输出为“E”。

输入数据不合法(大于100或者小于0)时输出“data error!”。

可重复输入成绩进行转换,直接输入回车时结束程序‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

输入:

每次输入一个浮点数,代表百分制成绩;

重复输入,输入回车时结束程序‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

输出:

根据每一次的输入值分别输出A、B、C、D、E中的一个字母或"data error!"

while True :score = input("请输入一个浮点数,代表百分制成绩:")if score != ' ':try:score = eval(score)if score >= 90 and score <= 100:print("A")elif score >= 80 and score <= 90:print("B")elif score >= 70 and score <= 80:print("C")elif score >= 60 and score <= 70:print("D")elif score > 0 and score < 60:print("E")else:print("data error!")except:print("data error")else:break

运行结果是:

请输入一个浮点数,代表百分制成绩:90.9
A
请输入一个浮点数,代表百分制成绩:80.7
B
请输入一个浮点数,代表百分制成绩:70.5
C
请输入一个浮点数,代表百分制成绩:65.6
D
请输入一个浮点数,代表百分制成绩:59
E
请输入一个浮点数,代表百分制成绩:ddd
data error
请输入一个浮点数,代表百分制成绩: 

二、Leibniz公式计算圆周率

历史上有许多计算圆周率Π的公式,其中,格雷戈里和莱布尼茨发现了下面的公式(可由等比数列求和公式变换并积分获得):

11−13+15−17+⋯=π4\frac{1}{1}-\frac{1}{3}+\frac{1}{5}-\frac{1}{7}+\cdots=\frac{\pi}{4}11​−31​+51​−71​+⋯=4π​

这个公式累加1项是4.00,累加2项是2.67,累加3项是3.47…趋进于圆周率值。编程对其各项进行累加,直到最后一项的绝对值小于10−610^{-6}10−6为止,输出此时的圆周率值。

import mathsum = 0
fh = 1  
fm = 1
i= 1
while math.fabs(4 / fm) > 0.000001:sum += fh * 4 / fmfh = fh * (-1)fm = fm + 2i += 1
print(f"累加次数为{i}")
print(f"Π的值为{sum}")

运行的结果是:

累加次数为2000001
Π的值为3.141592153589724

三、输出回文素数

输出20000以内的所有回文素数。回文数是指正序和逆序均相同的数,例如131;素数是除了1和它本身不能被其他任何数整除的数 。提示:可以编写一个判断素数的函数方便书写程序。

def prime(n):"""接收正整数n,判断是否为素数,返回布尔值"""if n < 2:return False       # 0和1不是素数for i in range(2, n):  # 遍历(2, n-1)中的数if n % i == 0:     # 若在(2, n-1)中存在因子则不是素数return False   # 不是素数时返回Falseelse:   # for语句遍历(2, n-1)中所有数,未发现因子存在时,才是素数return True        # 素数时返回Truefor i in range(20000):if str(i) == str(i)[::-1] and prime(i):print(i,end=' ')

运行的结果是:

2 3 5 7 11 101 131 151 181 191 313 353 373 383 727 757 787 797 919 929 10301 10501 10601 11311 11411 12421 12721 12821 13331 13831 13931 14341 14741 15451 15551 16061 16361 16561 16661 17471 17971 18181 18481 19391 19891 19991

四、输出该日期是这一年的第几天

输入年/月/日(用斜杠分隔),输出该日期是这一年的第几天?(本题目保证测试使用的年、月、日都是合法输入)技巧提示:

map()函数可以将多个数据转换成指定数据类型

split()函数可以将字符串按照指定分隔符进行间隔并生成数据列表

a, b, c = map(int, input().split(“:”))

#上述语句可以将输入格式为 “12:30:05” 的字符串分解成[“12”, “30”, “05”]

#并将列表中每个数据转换成整型数据并分别赋值给a,b,c三个变量

示例 1

输入: 2018/2/1 输出: 2018年2月1日是2018年第32天

import datetime
try:year, month, day = map(int, input().split("/"))target_day = datetime.date(year, month, day)day_count = target_day-datetime.date(target_day.year - 1, 12, 31)print(f"{year}年{month}月{day}日是{year}年第{day_count.days}天")
except:print("请输入正确的年月日!")

运行的结果是:

2018/2/1
2018年2月1日是2018年第32天

相关内容

热门资讯

大唐御医的误诊:以为是绝症肿瘤... 声明:本文内容结合公开史料与中医典籍进行艺术创作,旨在人文科普,不传播封建迷信,请读者朋友保持理性阅...
赛英电子治理“黑洞”:IPO前... 本文时代商业研究院 作者:陆烁宜 来源丨时代商业研究院 作者丨陆烁宜 编辑丨郑琳 IPO前夕董秘及...
万亿市值迫近 北交所托举实体创... 【编者按】新质生产力加速成长、产业升级步履铿锵、首都功能不断提升……“十四五”时期,我们见证了北京高...
确认了!她接棒父亲任董事长 公司召开第四届董事会第十九次会议选举公司副董事长石思慧担任公司董事长,石平湘担任副董事长。此外,公司...
促消费!6部门发布19条举措加... 6月24日 为推动大力提振消费 中国人民银行等6部门对外发布 《关于金融支持提振和扩大消费的指导意见...
退税更“丝滑” 多地提供“即买... 近日,商务部等6部门发布通知,进一步优化离境退税政策。文件出台后,一些城市增加了退税商店,提供更加便...
突发!王健林旗下大连万达集团所... 红星资本局3月23日消息,日前,王健林旗下大连万达集团股份有限公司(以下简称大连万达集团)又新增一条...
银行间主要利率债收益率升幅扩大 每经AI快讯,3月14日,银行间主要利率债收益率升幅扩大,10年期国开债“25国开05”收益率上行1...
国内期货夜盘开盘多数上涨 【国内期货夜盘开盘多数上涨】沪银涨近3%,铁矿石、沪镍、沪锡、焦炭等均涨超1%,沪金涨近1%;跌幅方...
6国心脏外科医生到北医三院,首... 近日 首期北京大学“一带一路” 微创冠脉搭桥国际高级学习班 在北医三院顺利举行 来自 葡萄牙、以色列...
去年净利预亏约10亿!“国产G... 摩尔线程(688795.SH)今日公告称,公司预计2025年年度实现营业收入14.5亿元到15.2亿...
华能旗下上市公司资产重组过审! 12月12日,内蒙古蒙电华能热电股份有限公司(以下简称“内蒙华电”)发布公告称,拟通过发行股份及支付...
金价,暴跌! 10月21日,黄金白银再次急跌。 截至16:43发稿时,伦敦现货黄金大跌近2%,交投于4270美元/...
8月1日起,现金买黄金超10万... 近日,中国人民银行发布“中国人民银行关于印发《贵金属和宝石从业机构反洗钱和反恐怖融资管理办法》的通知...
央行多措并举稳资金 六月流动性...   为保持银行体系流动性充裕,中国人民银行日前发布公告称,5月央行以固定数量、利率招标、多重价位中标...
恒生科技指数跌超1% 5月13日,恒生科技指数跌超1%。截至9时32分,该指数跌1.14%。蔚来、小鹏汽车、美团、网易、快...
2024年得分创新高!前海税收... 深圳商报·读创客户端记者 陈发清 4月29日,2024年度前海税收营商环境测评报告发布会在前海举办...
腾讯领投!智元机器人完成新一轮... 3月24日,上海证券报记者从业内独家获悉,智元机器人已于近日完成新一轮融资,该轮投资由腾讯领投,另有...
我国服务业对外资开放步伐加快 今年以来,我国服务业领域对外资开放力度加大,增值电信、医疗等多个领域积极推出试点,高水平对外开放扎实...
全球媒体聚焦 |“当美国威胁要... 澳大利亚“对话”网站近日刊发加拿大圣托马斯大学国际关系和政治学教授肖恩·纳里恩的文章指出,当美国威胁...