Python题库:简单分支
目录
简单分支
判断奇偶数(已做)
描述
用户输入一个正整数,判断该数是奇数还是偶数,如果奇数输出odd,偶数则输出even。
输入格式
输入一个正整数 n=int(input("请输入一个正整数"))
输出格式
奇数输出odd,偶数则输出even。 if n%2==0:
print("even")
else:
print("odd")
a除以b(已做)
描述
输出实数a除以b的结果,计算结果四舍五入,保留2位小数。
输入格式
输入包括两行, 每行一个实数, b不能等于0
输出格式
当用户输入b为0时输出"除零错误"
其他情况下输出一个保留2位小数的实数
代码
a=int(input("请输入正整数a:")) b=int(input("请输入正整数b:")) if b == 0: print("除零错误") end=a/b print("|%8.2f|"%end)
判断闰年(2022重点看)
描述
写一个程序用于判断用户输入的年份是不是闰年,如果是输出“True”,如果不是输出“False”。
输入格式
输入一个代表年份的正整数
输出格式
“True”或“False” y=int(input("判定年份:")) if (y % 4 == 0) and (y % 400 != 0) or (y % 400 == 0):
print("Ture")
else:
print("False")
用户登录A
描述
实现用户输入用户名和密码,当用户名为 admin且密码为123456时,显示“登录成功”,否则显示“登录失败”。
输入格式
用户在两行里分别输入用户名和密码
输出格式
"登录成功"或"登录失败" Username=input("请输入正确的用户名") Password=input("请输入正确的密码") if Username=="admin" and Password=="123456":
print(" 登陆成功")
else:
print("登陆失败")
判断是否直角三角形
描述
输入三个数a,b,c, 判断能否以它们为三个边长构成直角三角形。若能,输出YES,否则输出NO。
输入格式
输入包括三行,每行是一个数字
输出格式
'YES' 或'NO' a=int(input("请输入第一条边:")) b=int(input("请输入第二条边:")) c=int(input("请输入第三条边:")) if a*a + b*b == c*c or a*a + c*c == b*b or c*c + b*b == a*a:
print("YES")
else:
print("NO")
身高测算
描述
测算身高,单位为厘米,公式参考下列:
男性身高=(父亲身高+母亲身高)×1.08÷2
女性身高=(父亲身高×0.923+母亲身高)÷2
性别输入"男"或“女”,本题保证所有测试输入身高数据为整型,输出结果取整。如果性别输入不符合要求,则输出“无对应公式”
输入格式
输入三行数据如下:
父亲身高(厘米)
母亲身高(厘米)
性别
输出格式
计算出的身高数据(厘米,取整) father=int(input("请输入父亲的身高:")) mother=int(input("请输入母亲的身高:")) gender=input("请输入你的性别:") height=0 if gender=="男":
height=int((father+mother)*1.08/2) print(height)
elif gender=="女":
height=int((father*0.923+mother)/2) print(height)
else:
print("无对应公式")
百分制成绩转换五分制(2022重点看)
描述
编写一个学生成绩转换程序,用户输入百分制的学生成绩,成绩大于或等于90的输出为“A”,成绩大于或等于80且小于90的输出为“B”,成绩大于或等于70且小于80的输出为“C”,成绩大于或等于60且小于70的输出为“D”,成绩小于60的输出为“E”
输入格式
输入一个不超过100的正数,代表百分制成绩。
输出格式
A、B、C、D、E中的一个字母,表示五分制的成绩等级 score=float(input("请输入学生的成绩:")) if score<0 or score>100:
print("该成绩不合法")
elif score>=90:
print("该成绩等级为A")
elif score>=80:
print("该成绩等级为B")
elif score>=70:
print("该成绩等级为C")
elif score>=60:
print("该成绩等级为D")
else:
print("该成绩等级为E")
一元二次方程求根(已做)
描述
一元二次方程ax2+bx+c=0,a、b、c的值由用户在三行中输入,根据用户输入的数值求解方程的实数解:
如果a值 为0,根据b值判断方程是否有解并输出,如果a与b同时为0,则输出Data error!
如果方程无实数解,输出“该方程无实数解”;
如果方程有两个相同的实数解,输出一个解,结果保留2位小数;
如果方程有两个不同的实数解,在一行内按从大到小顺序输出方程的两个解,用空格分隔,结果保留2位小数。
输入格式
输入三行数据, 每行输入一个实数
输出格式
方程的解
a = float(input()) b = float(input()) c = float(input()) delta = b * b - 4 * a * c if a == 0 and b != 0: #print( round(- c / b,2)) print('{:.2f}'.format(- c / b)) elif a == 0 and b == 0: print('Data error!') elif delta < 0: print("该方程无实数解") elif delta == 0: #print(round(-b / (2 * a),2)) print('{:.2f}'.format(-b / (2 * a))) else: x1 = (-b + delta ** 0.5) /( a * 2) x2 = (-b - delta ** 0.5) /(a * 2) if x1 < x2: x1,x2=x2,x1 #print(round(x1,2),round(x2,2)) # round()函数获得的浮点数会自动转为最短表示,例如round(3.10000, 2) 的结果是3.1,而不是3.10 print('{:.2f} {:.2f}'.format(x1,x2)) # str.format()的方法可以严格按约定保留小数位数,例如'{:.2f}'.format(3.100000) 的结果是3.10
未做
今年多少天
描述
闰年366天,其他年份365天。普通年(不能被100整除的年份)能被4整除的为闰年。(如2004年就是闰年,1999年不是闰年);
世纪年(能被100整除的年份)能被400整除的是闰年。(如2000年是闰年,1900年不是闰年);
用户输入一个正整数,代表年份,输出该年有多少天?
输入格式
输入一个正整数,表示年份
输出格式
该年的天数
判断三角形并计算面积
描述
输入三个数a,b,c, 判断能否以它们为三个边长构成三角形。若能,输出YES和三角形面积(结果保留2位小数),否则输出NO。
输入格式
输入包括三行,每行是一个数字
输出格式
如果输入的三个数字能够组成三角形的三边,则输出为两行,分别是'YES' 和面积值(结果保留2位小数);如果输入的三边不能组成三角形,则输出为'NO'
a = float(input()) b = float(input()) c = float(input()) if a + b > c and a + c > b and b + c > a: # 判断是否能构成三角形 p = (a + b + c) / 2 area = (p * (p - a) * (p - b) * (p - c)) ** (1/2) # 注意用小括号保证运算优先级 print('YES') print('{:.2f}'.format(area)) # 输出严格保留2位小数,6.00时输出6.00 else: print('NO')
今天是第几天
描述
输入年/月/日(用斜杠分隔),输出该日期是这一年的第几天(题目保证年、月、日都是合法输入)?
输入格式
年/月/日
输出格式
某年某月某日是某年第多少天
year, month, day = map(int, input().split('/')) days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0): days[1] = 29 sumDay = sum(days[:month - 1]) + day print('{}年{}月{}日是{}年第{}天'.format(year, month, day, year, sumDay))
个税计算器
描述
目前我国个人所得税计算公式如下:
应纳个人所得税税额= (工资薪金所得 -五险一金 - 个税免征额)×适用税率-速算扣除数
个税免征额为5000元/月,2018年10月1日起调整后,也就是2018年实行的7级超额累进个人所得税税率表如下:
全月应纳税所得额(含税级距) 税率(%) 速算扣除数 不超过5,000元 3 0 超过5,000元至12,000元的部分 10 210 超过12,000元至25,000元的部分 20 1,410 超过25,000元至35,000元的部分 25 2,660 超过35,000元至55,000元的部分 30 4,410 超过55,000元至80,000元的部分 35 7,160 超过80,000元的部分 45 15,160
请编写一个个税计算器,用户输入为应发工资薪金所得扣除五险一金后的金额,输出应缴税款和实发工资,结果保留小数点后两位。当输入数字小于0时,输出“error”。
输入格式
输入一个表示工资的数值,例如12000.0,此数值为已扣除五险一金后的金额。
输出格式
应缴税款490.00元,实发工资11510.00元。
出租车计费(2022重点看)
描述
某城市出租车计费标准如下:
(1)起步里程为3公里(含3公里),起步费13元;
(2)载客里程3~15公里范围的,除起步费外,超过3公里的部分按基本单价2.3元/公里计算;
(3)载客里程超过15公里的,15公里内的按照(2)计算,超过15公里的基本单价加收50%的费用;
(4)时速低于12公里/小时的慢速行驶时间计入等待时间,每等待1分钟加收1元;
请输入乘车里程(整数)、等待时间,输出车费。
输入格式
在同一行输入两个正整数,分别表示行驶里程与等待时间,数字间以半角逗号分隔。
输出格式
输出车费,保留0位小数
分期付款计算器
描述
购买房屋或大宗家电时,很多时候可以分期付款,还款方式分为等额本息和等额本金两种:
等额本息(Average Capital Plus Interest:ACPI)还款公式:
每月还款额=贷款本金*月利率*(1+月利率)**总还款月数/((1+月利率)**总还款月数-1)
等额本金(Average Capital:AC)还款公式:
每月还款额=贷款本金/总还款月数+(贷款本金-累计已还款本金)*月利率
设计一个程序计算分期付款时每一期的应还款额,还款方式输入错误时,输出“还款方式输入错误”。
输入格式
4行输入:
第1行输入一个浮点数,表示贷款本金
第2行输入一个整数,表示分期月数
第3行输入一个字符串,表示还款方式,限定只能输入"ACPI"或"AC",分别表示等额本息和等额本金
第4行输入一个浮点数,表示月利率
输出格式
输出每月还款额,等额本金方式时,输出的数字间用逗号分隔(用round()函数保留2位小数)
还款方式输入错误时,输出“还款方式输入错误”
输入输出示例
计算整数 n 的阶乘
描述
输入一个数值,如果输入的数据为浮点数或者负数,输出”ERROR“,否则计算输入的数的阶乘并输出。
输入格式
输入一个数值
输出格式
输出其阶乘或“ERROR”
分段函数A
描述
按照上面的分段函数,对输入的整数x,输出对应的y值。对于超出范围的整数x,输出“ERROR”。
本题保证测试数据中x均为整数。
输入格式
输入一个整数,表示x的值
输出格式
输出y的值或者“ERROR”
字符大小写转换
描述
输入一个字符串,将其中大写字母转为小写,小写字母转为大写,其他字符保持原样,输出转换后的字符串。
输入
输入一个字符串。
输出
输出转换后的字符串。