java交税代码 java怎么编程税收

使用JavaBean设计个人所得税计算器,要求写出TaxInput.html、TaxBean.java、TaxResult.jsp,税率表如下:

首先写JAVABEAN文件:WageTax.java/**nbsp;*nbsp;*nbsp;@authornbsp;剑江帝国nbsp;*nbsp;@usagenbsp;计算个人所得税nbsp;*nbsp;@datenbsp;2008-10-8nbsp;*/publicnbsp;classnbsp;WageTaxnbsp;implementsnbsp;java.io.Serializable{nbsp;nbsp;nbsp;nbsp;privatenbsp;doublenbsp;wage;//定义工资nbsp;nbsp;nbsp;nbsp;privatenbsp;Stringnbsp;output=““;//定义输入nbsp;nbsp;nbsp;nbsp;/**nbsp;nbsp;nbsp;nbsp;nbsp;*nbsp;输入一个字符串,代表工资,如果输入出错会将错误写至outputnbsp;nbsp;nbsp;nbsp;nbsp;*/nbsp;nbsp;nbsp;nbsp;publicnbsp;voidnbsp;setWage(Stringnbsp;wageInput){nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;try{nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;this.wage=Double.parseDouble(wageInput);nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;catch(Exceptionnbsp;ex){nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;output=“输入有误“;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;this.wage=-1;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;/**nbsp;nbsp;nbsp;nbsp;nbsp;*nbsp;计算税额,算法简单说一下。nbsp;nbsp;nbsp;nbsp;nbsp;*/nbsp;nbsp;nbsp;nbsp;publicnbsp;doublenbsp;countTax(){nbsp;nbsp;nbsp;nbsp;nbsp;ifnbsp;(wage-2000amp;gt;0){nbsp;nbsp;nbsp;nbsp;//第一步,将个人的工资减去2000后按交税等级分成若干个收入块nbsp;nbsp;nbsp;nbsp;//第二步,按对应税率统计每个块应该交税额并相加,之后返回nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;//STEP1nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;wage=wage-2000;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;doublenbsp;rate[]={0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4,0.45};nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;intnbsp;bound[]={0,500,2000,5000,20000,40000,60000,80000,100000};nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;doublenbsp;chunk[]={0,0,0,0,0,0,0,0,0};nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;for(intnbsp;i=1;iamp;lt;9;i++){nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;ifnbsp;(wage-bound[i]+bound[i-1]amp;gt;0)nbsp;{nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;wage=wage-bound[i]+bound[i-1];nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;chunk[i-1]=bound[i]-bound[i-1];nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;else{nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;chunk[i-1]=wage;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;wage=-1;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;break;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;ifnbsp;(wageamp;gt;0)nbsp;chunk[8]=wage;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;doublenbsp;tax=0;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;for(intnbsp;i=0;iamp;lt;9;i++){nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;tax=tax+chunk[i]*rate[i];nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;returnnbsp;tax;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;nbsp;elsenbsp;returnnbsp;0;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;/**nbsp;nbsp;nbsp;nbsp;nbsp;*nbsp;获得税款数nbsp;nbsp;nbsp;nbsp;nbsp;*/nbsp;nbsp;nbsp;nbsp;publicnbsp;Stringnbsp;getTax(){nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;ifnbsp;(output.equals(““)){nbsp;nbsp;nbsp;nbsp;returnnbsp;Double.toString(countTax());}nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;elsenbsp;returnnbsp;output;nbsp;nbsp;nbsp;nbsp;}}///////////////////////////////////////////////////////然后在输出页面中使用设定wage属性为工资,获得tax属性得到税

成都创新互联公司专注于盐湖企业网站建设,成都响应式网站建设公司,商城网站建设。盐湖网站建设公司,为盐湖等地区提供建站服务。全流程按需网站制作,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务

网上划款交税时出现这个什么意思java.net.SocketException: Socket Closed

这是网络异常的提示,通常是服务器端的问题,换台机器试试,如果还是不行,那就是税务那面的问题,稍微等等再试好了。

java 小程序

第一个是:

import javax.swing.*;

public class Test{

public static void main( String args[]){

String input = JOptionPane.showInputDialog("请输入一个时间:");

int time = Integer.parseInt(input);

int hour = time / 60;

int minute = (time % 60);

JOptionPane.showMessageDialog(null,hour+"小时"+minute+"分钟");

System.exit( 0 );

}

}

直接复制粘贴。

把这个保存为Test.java,然后编译。注意大小写。

第二个是:

import javax.swing.*;

public class Test{

public static void main( String args[]){

String input = JOptionPane.showInputDialog("请输入工作每小时的报酬:");

int pay  =  Integer.parseInt(input);

input = JOptionPane.showInputDialog("请输入工作小时数:");

int hour = Integer.parseInt(input);

input = JOptionPane.showInputDialog("请输入税率(0.00):");

float rate = Float.parseFloat(input);

String output;

output = "每小时工资:" + pay +

"\n工作小时数:" + hour +

"\n总收入:" + (pay * hour) +

"\n缴税金额:" + (pay*hour*rate) +

"\n净利润:" + (pay*hour*(1-rate));

JOptionPane.showMessageDialog(null,output);

System.exit( 0 );

}

}

这程序中在输入税率时不以%5输入 ,而是以0.05的形式输入。因为我还没有找到能把%5转换成float型数的函数。所以这一点很抱歉。望谅解。^_^

同样的把这个保存成Test.java即可编译。

使用JAVA或者C++给出根据给定的年终奖金额、当月计税工资额,计算最佳拆分方法

# coding=utf-8

import time

base_quota = 3500

tax_quota = [1500, 4500, 9000, 35000, 55000, 80000]

tax_rat = [0.03, 0.10, 0.20, 0.25, 0.30, 0.35, 0.45]

tax_quick = [0, 105, 555, 1005, 2755, 5505, 13505]

one_month = 0

two_month = 0

# 主线程执行函数

def run():

year_bonus = input('Please input bonus\n')

month_salary = input('Please input salary\n')

year_bonus = int(year_bonus)

month_salary = int(month_salary)

# 获取三种方案的税额(不拆分、拆入一个月、拆入两个月)

start_time = time.clock()

year_bonus_tax = get_only_bonus_tax(year_bonus, month_salary)

one_month_tax = get_one_month_bonus(year_bonus, month_salary)

two_month_tax = get_two_month_bonus(year_bonus, month_salary)

# 取最小税额并计算税后奖金

min_tax = min(year_bonus_tax, one_month_tax, two_month_tax)

bonus_remain = year_bonus - min_tax

if min_tax == year_bonus_tax:

print(year_bonus, "0", "0", bonus_remain)

elif min_tax == one_month_tax:

print(year_bonus - one_month, one_month, "0", bonus_remain)

elif min_tax == two_month_tax:

print(year_bonus - (two_month * 2), two_month, two_month, bonus_remain)

else:

return

end_time = time.clock()

print(u"耗时:"),

print(end_time - start_time)

run()

return

# 获取税率等级

def get_tax_num(money):

for i in range(len(tax_quota)):

if money tax_quota[-1]:

return len(tax_quota)

elif money = tax_quota[i]:

return i

else:

continue

# 获取税率

def get_tax_rat(money):

return rat(get_tax_num(money))

# 获取速算扣除数

def get_tax_quick(money):

return quick(get_tax_num(money))

def rat(num):

if num len(tax_rat):

return tax_rat[num]

else:

print("function rat error")

def quick(num):

if num len(tax_quick):

return tax_quick[num]

else:

print("function quick error")

# 获取平常月交税金额

def get_month_tax(money):

if money = base_quota:

return 0

else:

money -= base_quota

return money * get_tax_rat(money) - get_tax_quick(money)

# 获取年奖平均月交税金额

def get_per_month_tax(money):

return money * get_tax_rat(money) - get_tax_quick(money)

# 获取不拆分年奖交税总额

def get_only_bonus_tax(year_bonus, month_salary):

if int(month_salary) = int(base_quota):

if int(year_bonus) int(base_quota - month_salary):

return 0

else:

per_month = (year_bonus - (base_quota - month_salary)) / 12.0

tax = (year_bonus - (base_quota - month_salary)) * get_tax_rat(per_month) - get_tax_quick(

per_month)

else:

per_month = year_bonus / 12.0

tax = year_bonus * get_tax_rat(per_month) - get_tax_quick(per_month)

return tax

# 获取拆分为一个月交税总额

def get_one_month_bonus(year_bonus, month_salary):

now_bonus_tax = get_only_bonus_tax(year_bonus, month_salary)

for i in range(1, int(year_bonus)):

bonus_remain = year_bonus - i

month_add_salary = month_salary + i

month_tax_add = get_month_tax(month_add_salary) - get_month_tax(month_salary)

bonus_tax = round(get_only_bonus_tax(bonus_remain, month_salary) + month_tax_add, 2)

if bonus_tax now_bonus_tax:

now_bonus_tax = bonus_tax

global one_month

one_month = i

return now_bonus_tax

# 获取拆分为两个月交税总额

def get_two_month_bonus(year_bonus, month_salary):

now_bonus_tax = get_only_bonus_tax(year_bonus, month_salary)

for i in range(1, int(year_bonus)):

bonus_remain = year_bonus - i

month_add_salary = month_salary + (i / 2.0)

month_tax_add = (get_month_tax(month_add_salary) - get_month_tax(month_salary)) * 2.0

bonus_tax = round(get_only_bonus_tax(bonus_remain, month_salary) + month_tax_add, 2)

if bonus_tax now_bonus_tax:

now_bonus_tax = bonus_tax

global two_month

two_month = i / 2.0

return now_bonus_tax

# 运行主函数

run()

java代码的问题,求大神解答

你写错了,else if(3500income income=5000)

要改成else if(income3500 income=5000)

这个else if(5000income income=8000)

要改成else if(income5000 income=8000)

下面你自己仔细找,大于号写反了


文章标题:java交税代码 java怎么编程税收
文章源于:http://myzitong.com/article/hhsojp.html