帮写个简单功能(送分)

bei7318 2012-05-27 12:00:40
功能很简单,两个文本框一个按钮。在一个文本框输入工资,按下按钮后显示出计算工资
比如一个人收入5000,先减去19%的公积金,再减去3500(如果小于3500则不根据后面计算)税率计算:不超过1500的部分按3%计算,超过1500但小于4500的按10%计算,。。。。

再说的详细点:我在第一个文本框输入5000,按下按钮后,第二个文本框应显示4033.50;(5000-19%5000-3500)-( 5000-19%*5000-3500)*3%=4033.50

帮我列出详细的代码,谢谢了。谁详细并且我做成了加分。
...全文
158 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
人生无悔 2012-05-27
  • 打赏
  • 举报
回复
超过1500但小于4500的按10%计算,。。。。

强烈建议后续的东西写全,或是给个计算工资公式的链接地址做参考,毕竟大家不是做会计的,呵呵。。。
xboxeer 2012-05-27
  • 打赏
  • 举报
回复
写死算法很简单 但是好程序员写出来的会考虑很多东西 也不是一时半会儿能写出来的 比如可扩展性 数据校验等等
bei7318 2012-05-27
  • 打赏
  • 举报
回复
还没人吗?就是写个税率计算,应该不难吧,高手应该1分钟就写完吧!
弘毅致远 2012-05-27
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]

Convert.ToDouble(TextBox1.Text) * 19 %
0.19
[/Quote]

转换成double。
superliu1122 2012-05-27
  • 打赏
  • 举报
回复
Convert.ToDouble(TextBox1.Text) * 19 %
0.19
bei7318 2012-05-27
  • 打赏
  • 举报
回复
public partial class Gongjijin : System.Web.UI.Page
{
double x, y, z;
protected void Page_Load(object sender, EventArgs e)
{

}
protected void Button1_Click(object sender, EventArgs e)
{
y = Convert.ToDouble(TextBox1.Text) - Convert.ToDouble(TextBox1.Text) * 19 % -3500;
if (y < 1500)
{
x = y - y * 0.03;
}
if (1500 < y && y < 4500)
{
x = y - y * 0.1;
}
}


protected void TextBox2_TextChanged(object sender, EventArgs e)
{
TextBox2.Text = Convert.ToString(x);
}

}
我写的,错误很多,能指出错误也很感谢,本人超菜鸟。
bei7318 2012-05-27
  • 打赏
  • 举报
回复
(5000-19%5000)-( 5000-19%*5000-3500)*3%=4033.50

写错了不好意思,是这样的。
  • 打赏
  • 举报
回复
哪来的4033.50
  • 打赏
  • 举报
回复
LZ把公式写清楚好吗?

(5000-19%*5000-3500)-(5000-19%*5000-3500)*3% = 533.5
bei7318 2012-05-27
  • 打赏
  • 举报
回复
就是一个税后工资计算功能
http://wenku.baidu.com/view/70a010220722192e4536f6b8.html?from=rec&pos=2&weight=5&lastweight=3&count=4
看一下这个表就明白了


求详细代码(包括代码位置)
wxlovezyp888 2012-05-27
  • 打赏
  • 举报
回复
我想说这么简单的,你可以自己试着去写!
何年 2012-05-27
  • 打赏
  • 举报
回复
给你改了一下


double x = Convert.ToDouble(TextBox1.Text) - Convert.ToDouble(TextBox1.Text) * 0.19 - 3500;
double y = 0;

if (x > 80000)
{
y += (x - 80000) * 0.45;
x = 80000;
}
else if (x > 55000)
{
y += (x - 55000) * 0.35;
x = 55000;
}
else if (x > 35000)
{
y += (x - 35000) * 0.30;
x = 35000;
}
else if (x > 9000)
{
y += (x - 9000) * 0.25;
x = 9000;
}
else if (x > 4500)
{
y += (x - 4500) * 0.20;
x = 4500;
}
else if (x > 1500)
{
y += (x - 1500) * 0.10;
x = 1500;
}
else if (x > 0) y += x * 0.03;
else
{
x = 0;
TextBox2.Text = "0";
return;
}
TextBox2.Text = Convert.ToString(Convert.ToDouble(TextBox1.Text) - Convert.ToDouble(TextBox1.Text) * 0.19 - y);


不过你的 TextBox1 要加验证哦!!前台后台都要加的。。不然别人乱输程序会出错!

还有。。TextBox2 最好改成只读的、、、
何年 2012-05-27
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]
protected void Button1_Click(object sender, EventArgs e)
{
double x = Convert.ToDouble(TextBox1.Text) - Convert.ToDouble(TextBox1.Text) * 0.19 - 3500;
double y = 0;

if (x >80000)
{……
[/Quote]

错的很彻底。、、

如果 X > 80000

那么 第一个条件成立、、第二个条件也成立、、、

。。。后面的。。楼主!!!!

改成 else if 。。。 小错误不该犯的!!
何年 2012-05-27
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]
protected void Button1_Click(object sender, EventArgs e)
{
double x = Convert.ToDouble(TextBox1.Text) - Convert.ToDouble(TextBox1.Text) * 0.19 - 3500;
double y = 0;

if (x >80000)
{……
[/Quote]

加一个、、、

if(x<0)
{
x=0;
}
net_grope 2012-05-27
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 的回复:]
写死算法很简单 但是好程序员写出来的会考虑很多东西 也不是一时半会儿能写出来的 比如可扩展性 数据校验等等
[/Quote]
很强大,比如数据校验,和可扩展性,今天要这么算,明天要那么算怎么办,所有东西都的给挖好坑让用户自己填,还有今天让算的数据不够大,如果哪天让算123456789987654321这样的数据怎么办,是不是把大数也用上,还有财务计算要求精度问题是不是要考虑,繁琐的问题
bei7318 2012-05-27
  • 打赏
  • 举报
回复
protected void Button1_Click(object sender, EventArgs e)
{
double x = Convert.ToDouble(TextBox1.Text) - Convert.ToDouble(TextBox1.Text) * 0.19 - 3500;
double y = 0;

if (x >80000)
{
y += (x - 80000) * 0.45;
x = 80000;
}
if (x > 55000)
{
y += (x - 55000) * 0.35;
x = 55000;
}
if (x > 35000)
{
y += (x - 35000) * 0.30;
x = 35000;
}
if (x > 9000)
{
y += (x - 9000) * 0.25;
x = 9000;
}
if (x > 4500)
{
y += (x - 4500) * 0.20;
x =4500;
}
if (x > 1500)
{
y += (x - 1500) * 0.10;
x = 1500;
}
if (x > 0) y += x * 0.03;
TextBox2.Text = Convert.ToString(Convert.ToDouble(TextBox1.Text) - Convert.ToDouble(TextBox1.Text) * 0.19- y);

}
我写好了,求改进功能或找错误!
何年 2012-05-27
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
功能很简单,两个文本框一个按钮。在一个文本框输入工资,按下按钮后显示出计算工资
比如一个人收入5000,先减去19%的公积金,再减去3500(如果小于3500则不根据后面计算)税率计算:不超过1500的部分按3%计算,超过1500但小于4500的按10%计算,。。。。

再说的详细点:我在第一个文本框输入5000,按下按钮后,第二个文本框应显示4033.50;(5000-19%5000-35……
[/Quote]

(5000-19%5000-3500)-( 5000-19%*5000-3500)*3%=4033.50 这公式看不懂诶!!!

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧