Python基础练习题

温度转换

说明:eval()使用

val = input ()
if val[0] in ['F','f']:
    C = (eval(val[1:])-32)/1.8
    print("C{:.2f}".format(C))
elif val[0] in ['C','c']:
     F = 1.8*eval(val[1:])+32
     print("F{:.2f}".format(F))

货币转换

说明:字符串基操
如图:
在这里插入图片描述

#Ratio = 6.78
Currency = input()
if Currency[-1] in 'D':
    R = 6.78*(eval(Currency[:-3]))
    print("{:.2f}RMB".format(R))
elif Currency[-1] in '$':
    R = 6.78*(eval(Currency[:-1]))
    print("{:.2f}¥".format(R))
elif Currency[-1] in 'B':
    U = (eval(Currency[:-3]))/6.78
    print("{:.2f}USD".format(U))
elif Currency[-1] in '¥':
    U = (eval(Currency[:-1]))/6.78
    print("{:.2f}$".format(U))

个人所得税计算

描述
设计个人所得税采用“超额累进税率”计算方法,简化公式如下:‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

   缴税 = (个人薪金扣险所得 – 个税免征额)* 税率 + 递进税额‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

其中,个税免征额为3500元,税率根据应纳税额数量而不同,如下表所示: ‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

级别 应纳税额区间‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬ 税率
1 0-3500 0%
2 3500-4000 5%
3 4500-9000 15%
4 9000-35000 20%
5 35000-55000 25%
6 55000-80000 35%
7 80000+ 45%

‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪
注意:“应纳税额”为:个人薪金扣险所得 – 个税免征额‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

例如,某人收入为4000,则个人所得税应为 (4000-3500)*0.05 + 0 = 25.00‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

某人收入为6000,则个人所得税应为(6000-4500)*0.15 + (4500-3500)*0.05 = 275.00‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

某人收入为10000,则个人所得税应为(10000-9000)*0.2 + (9000-4500)0.15 + 10000.05 = 925.00‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

某人收入为40000,则个人所得税应为(40000-35000)*0.25 + (35000-9000)*0.20 +(9000-4500)0.15 + 10000.05 = 7175.00‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

请编写一个程序根据用户输入计算个人所得税,用户输入是个人薪金扣险所得。约定用户输入为以人民币元为单位的整数。请保留2位小数输出。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

输入
示例1:40000‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

输出
示例1: 7175.00

说明:条件分支

def pct(n):
    return n/100

revenue = int(input())
threshold = 3500
tax_ratio = [pct(3),pct(10),pct(20),pct(25),pct(30),pct(35),pct(45)]
tax = 0

if revenue >3500:
    tax_due = revenue-threshold
    if tax_due < 1500:
        tax = tax_due*tax_ratio[0]
    elif tax_due<4500:
        tax = tax_due*tax_ratio[1]
    elif tax_due<9000:
        tax = tax_due*tax_ratio[2]
    elif tax_due<35000:
        tax = tax_due*tax_ratio[3]
    elif tax_due<55000:
        tax = tax_due*tax_ratio[4]
    elif tax_due<80000:
        tax = tax_due*tax_ratio[5]
    else:
        tax = tax_due*tax_ratio[6]
else:
    tax = 0
print(int(tax))

鸡兔同笼

鸡兔同笼
描述
一个笼子里面关了若干只鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里脚的总数为a,则笼子里面至少有多少只动物,至多有多少只动物? ‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

输入格式
第1行输入一个正整数n(n≤1000),表示测试数据的组数n,接下来n组测试数据每组一行,每行一个正整数a(a<32768)。提示: 输入使用input(),不要增加额外的提示信息 。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

输出格式
输出包含n行,每行对应一个输入,包含两个正整数,第一个是最少的动物数,第二个是最多的动物数,两个正整数之间用一个空格分开。输出包含n行,每行对应一个输入,包含两个正整数,第一个是最少的动物数,第二个是最多的动物数,两个正整数之间用一个空格分开。 如果没有满足要求的答案,则输出两个0。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬
说明:
克拉默法则(Cramer’s Rule)解二元线性方程组
对于二元线性方程组:
{ a 11 x 1 + a 12 x 2 = b 1 a 21 x 1 + a 11 x 2 = b 2 (1) \begin{cases} a_{11}x_1+a_{12}x_2=b_1\\ a_{21}x_1+a_{11}x_2=b_2\\ \end{cases}\tag{1}

  • 6
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值