“Python题库:简单分支”的版本间的差异
(→判断三角形并计算面积) |
|||
(未显示3个用户的39个中间版本) | |||
第1行: | 第1行: | ||
==简单分支== | ==简单分支== | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===判断奇偶数(已做)=== | ===判断奇偶数(已做)=== | ||
第20行: | 第6行: | ||
用户输入一个正整数,判断该数是奇数还是偶数,如果奇数输出odd,偶数则输出even。 | 用户输入一个正整数,判断该数是奇数还是偶数,如果奇数输出odd,偶数则输出even。 | ||
+ | |||
====输入格式==== | ====输入格式==== | ||
输入一个正整数 | 输入一个正整数 | ||
+ | n=int(input("请输入一个正整数")) | ||
+ | |||
====输出格式==== | ====输出格式==== | ||
奇数输出odd,偶数则输出even。 | 奇数输出odd,偶数则输出even。 | ||
+ | if n%2==0: | ||
+ | print("even") | ||
+ | else: | ||
+ | print("odd") | ||
===a除以b(已做)=== | ===a除以b(已做)=== | ||
第34行: | 第27行: | ||
输入包括两行, 每行一个实数, b不能等于0 | 输入包括两行, 每行一个实数, b不能等于0 | ||
+ | |||
====输出格式==== | ====输出格式==== | ||
第39行: | 第33行: | ||
其他情况下输出一个保留2位小数的实数 | 其他情况下输出一个保留2位小数的实数 | ||
+ | |||
+ | ====代码==== | ||
+ | <nowiki> | ||
+ | a=int(input("请输入正整数a:")) | ||
+ | b=int(input("请输入正整数b:")) | ||
+ | if b == 0: | ||
+ | print("除零错误") | ||
+ | end=a/b | ||
+ | print("|%8.2f|"%end) | ||
+ | </nowiki> | ||
+ | |||
+ | ===判断闰年(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") | ||
===一元二次方程求根(已做)=== | ===一元二次方程求根(已做)=== | ||
第121行: | 第240行: | ||
print('NO')</nowiki> | print('NO')</nowiki> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===今天是第几天=== | ===今天是第几天=== | ||
第147行: | 第253行: | ||
某年某月某日是某年第多少天 | 某年某月某日是某年第多少天 | ||
− | == | + | <nowiki>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))</nowiki> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===个税计算器=== | ===个税计算器=== | ||
第196行: | 第288行: | ||
应缴税款490.00元,实发工资11510.00元。 | 应缴税款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=== | ||
+ | |||
+ | | ||
+ | ====描述==== | ||
+ | |||
+ | [[文件:python21102901.png|500px]] | ||
+ | |||
+ | 按照上面的分段函数,对输入的整数x,输出对应的y值。对于超出范围的整数x,输出“ERROR”。 | ||
+ | |||
+ | 本题保证测试数据中x均为整数。 | ||
+ | ====输入格式==== | ||
+ | |||
+ | 输入一个整数,表示x的值 | ||
+ | ====输出格式==== | ||
+ | |||
+ | 输出y的值或者“ERROR” | ||
+ | |||
+ | ===字符大小写转换=== | ||
+ | ====描述==== | ||
+ | |||
+ | 输入一个字符串,将其中大写字母转为小写,小写字母转为大写,其他字符保持原样,输出转换后的字符串。 | ||
+ | ====输入==== | ||
+ | |||
+ | 输入一个字符串。 | ||
+ | ====输出==== | ||
+ | |||
+ | 输出转换后的字符串。 | ||
+ | |||
+ | |
2022年12月12日 (一) 02:45的最新版本
目录
简单分支
判断奇偶数(已做)
描述
用户输入一个正整数,判断该数是奇数还是偶数,如果奇数输出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”
字符大小写转换
描述
输入一个字符串,将其中大写字母转为小写,小写字母转为大写,其他字符保持原样,输出转换后的字符串。
输入
输入一个字符串。
输出
输出转换后的字符串。