例19  使用IF函数计算个人所得税

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了例19  使用IF函数计算个人所得税相关的知识,希望对你有一定的参考价值。

参考技术A 例19  使用IF函数计算个人所得税

A例子

不同的工资额应缴纳的个人所得税税率也各不相同,因此可以使用IF函数判断出当前员工工资应缴纳的税率,再自动计算出应缴纳的个人所得税。

此处约定如下:

工资在1000元以下免征个人所得税;

工资在1000~5000元,税率10%;

工资在5000~10000元,税率15%;

工资在10000~20000元,税率20%;

工资在20000元以上,税率25%。

B步骤

1选中C2单元格,在编辑栏中输入公式:=IF(B2<=1000,0,IF(B2<=5000,(B2-1000)*0.1,IF(B2<=10000,(B2-5000)*0.15+25,IF(B2<=20000,(B2-10000)*0.2+125,(B2-20000)*0.25+375)))).按回车键,即可计算出第一位员工的个人所得税。

提示:在公式中出现的“25”、“125”和“375”是个人所得税的速算扣除数,这是标准的个人所得税税率速算扣除数,用户上网搜索一下即可得到。

2选中C2单元格,向下拖动进行公式填充,可实现快速计算出其他员工应缴纳的个人所得税,如图所示。

C解析

①“B2<=1000”,判断工资总额是否小于1000元。如果是,不征收个人所得税;反之,进入下个IF函数的判断。

②“B2<=5000”,判断工资总额是否小于5000元且大于1000元,如果是,通过计算“(B2-1000)*0.1”得到应缴纳个人所得税金额;反之,进入下个IF函数的判断。

③“B2<=10000”,判断工资总额是否小于10000元且大于5000元,如果是,通过计算“(B2-5000)*0.15+25”得到应缴纳个人所得税金额;反之,进入下个IF函数的判断。

④"B2<=20000",判断工资总额是否小于20000元且大于10000元,如果是,通过计算"(B2-10000)*0.2+125"得到应缴纳个人所得税金额;反之,进入下个IF函数的判断。

⑤公式最后的“(B2-20000)*0.25+375”,判断工资总额是否大于20000元,如果是,通过计算“(B2-20000)*0.25+375)”得到应缴纳个人所得税金额。

D思路总结

判断条件可以使用某数1>某数2,或某数1<=某数2,方法灵活多变。

如何使用 Angular 4 Jasmine 单元测试用例覆盖 IF/ELSE 条件

【中文标题】如何使用 Angular 4 Jasmine 单元测试用例覆盖 IF/ELSE 条件【英文标题】:How to cover IF/ELSE condition with Angular 4 Jasmine unit test case 【发布时间】:2018-05-24 19:55:23 【问题描述】:

帮助我覆盖 IF/Else 覆盖范围和返回 HTTP 响应的方法以及构造函数以覆盖 Jasmine 单元测试用例的路由器和 Appconfig 服务的分支覆盖范围

【问题讨论】:

【参考方案1】:

您可以使用 MockBackend 模拟 http 响应 参考:https://angular.io/api/http/testing/MockBackend

您可以轻松定义自己的响应并测试所有 if/else

// before each test 
beforeEach(() => 
    this.injector = ReflectiveInjector.resolveAndCreate([
      provide: ConnectionBackend, useClass: MockBackend,
      provide: RequestOptions, useClass: BaseRequestOptions,
      Http,
      // other dependencies like Router / AppConfig
    ]);
    this.authenticationService = this.injector.get(AuthenticationService);
    this.backend = this.injector.get(ConnectionBackend) as MockBackend;
    this.backend.connections.subscribe((connection: any) => this.lastConnection = connection);   
);


// in your test
const mockErrorResponse = status: 200;
this.lastConnection.mockRespond(new Response(new ResponseOptions(body: JSON.stringify(mockErrorResponse))));
tick();

【讨论】:

以上是关于例19  使用IF函数计算个人所得税的主要内容,如果未能解决你的问题,请参考以下文章

Vue中的计算属性与监视属性

VUE计算属性、监听&深度监听、八大生命周期、v-if和v-show

Python的if 条件语句

vue中的生命周期的个人理解

Vue中的计算属性

算法提高 12-1三角形   外心坐标