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天

相关内容

热门资讯

强外贸拓市场 宜宾19家企业亮... 4月15日至5月5日,第139届中国进出口商品交易会(简称“广交会”)在广州举办。活动期间,宜宾市商...
原创 运... 运-20运输机近日再一次展现了其非凡能力——为救治一名身处西藏阿里高原的重病边防战士,它完成了一次跨...
水井坊总经理再变动!胡庭洲在任... 在刚刚披露完2025年报和2026年一季报后,水井坊再次迎来核心高管的变动。 5月6日,水井坊发布公...
康宁公司(GLW)维持超过14... 康宁公司(GLW)维持超过14%的涨幅,持稳于185美元附近,美股盘初曾达到195.81美元——盘中...
原创 国... 阅读须知:本文内容所有信息和数据,均为作者查阅官方信息和网络已知数据整合解析,旨在让读者更清晰了解相...
原创 金... 2026年5月6日,国内金价继续从高位回落,上海黄金交易所的AU9999报每克1013元,沪金期货主...
新华鲜报丨交易笔数大增 从支付...   新华社北京5月6日电(记者吴雨)消费市场活力十足,尽显中国经济强劲韧性。中国人民银行5月6日发布...
原创 安... - 对外直接投资[1]:2026年一季度中国全行业对外直接投资445亿美元,同比增长8.9%;非金融...
龙芯中科:现在公司主打性价比,... 证券日报网5月6日讯 ,龙芯中科在接受调研者提问时表示,公司过去主打芯片自主性,所以是应用导向的,比...
新华鲜报|交易笔数大增 从支付... 消费市场活力十足,尽显中国经济强劲韧性。中国人民银行5月6日发布的数据显示,今年“五一”假期支付交易...
马斯克同意支付150万美元罚款 据路透社报道,4日提交的一份法庭文件显示,美国证券交易委员会已经与美国企业家马斯克就收购推特期间涉嫌...
福建沙县农商银行被罚170万元 【大河财立方消息】5月6日,国家金融监督管理总局三明监管分局披露的行政处罚信息显示,因违规下达存款考...
原创 只... 此前盛传三星要暴砍中国市场产品线的消息,终于落地了。 5月6日,三星在官网正式发布公告,停止在中国大...
珀莱雅上市9年首次“双降”,二... 出品 |达摩财经 此次是珀莱雅第二次向港交所递表。去年8月,珀莱雅发布公告称,为加快国际化战略和海...
沿河县中界镇创新“三营联动”发... 沿河县中界镇创新“三营联动” 发展壮大农村集体经济 近年来,沿河县中界镇聚焦“强村富民”目标,创新推...
老牌私募打新违规被“点名”! 来源:金融时报 一家老牌私募机构因网下打新违规被“点名”。 近日,中国证券业协会(以下简称“中证协”...
和讯信息张杨:五月开门红!存储... 5月开门红,存储芯片大涨还能不能在科技里躺平了?和讯信息张杨分析,首先是假期外围大涨,导致今天芯片大...
警报响起!30年期美债收益率再... 全球股市处于历史高位,但债券市场的警示信号越来越清晰。 30年期美国国债收益率重新站上5%的关口,再...
五粮液急了!先推80亿元至10... 年报推迟公布之后,五粮液摊上事了。股民纷纷质疑五粮液“修改数据”,二级市场,公司股价今日逆市下跌近5...
收假必看!央行+海关新政落地,... 来源:市场资讯 (来源:矿业俱乐部) 央行、海关总署联合发布公告,自2026年6月1日起升级黄金及...