|
查看: 1222|回复: 6
|
java工资算法的问题(功课)
[复制链接]
|
|
|
要怎样把工钱算在一起呢?
例如:
40小时前,每小时乘5,等于200
40小时后的20小时,就是41小时开始,每小时乘8,等于160
60小时后,61小时开始,每小时乘10,等于+++
全部要加起来算的。。。
这function要怎样做?
虽然这是对了,可是是用错方法的。。。
有没有其他方法做呢?-
- public class Main {
- public static void main(String[] args) {
- char name= 'a';
- int wages= 40;
- if (wages <= 40)
- {
- wages = (wages*5);
- System.out.println('a');
- System.out.println(wages);
- }
- else
- if (wages <= 60)
- {
- wages = (wages*8);
- System.out.println('a');
- System.out.println(wages-120);
- }
- else
- if (wages >= wages)
- {
- wages = (wages*10);
- System.out.println('a');
- System.out.println(wages-240);
- }
-
- }
- }
复制代码
[ 本帖最后由 lonely_boy 于 5-7-2008 06:10 PM 编辑 ] |
|
|
|
|
|
|
|
|
|
|
发表于 5-7-2008 06:25 PM
|
显示全部楼层
|
可以解释清楚你的问题吗? 很想帮你但不懂你要的是什么? 全部要加起来算是什么意思? 比方说第62 小时, 你要的时从第1小时 加到第62 小时吗? |
|
|
|
|
|
|
|
|
|
|
发表于 5-7-2008 06:26 PM
|
显示全部楼层
我都不知ngam 唔 ngam。
p/s: 做mei 無得input wages?
public class Main {
public static void main(String[] args) {
char name= 'a';
int wages = 40;
int b;
if(wages <= 40)
{
wages = wages*5;
}
if(wages > 40 & wages <= 60)
{
b= wages - 40;
wages = 200+ (b*8);
}
if(wages > 60)
{
b= wages - 60;
wages = 360+ (b*10);
}
System.out.println(wages);
}
} |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 5-7-2008 06:32 PM
|
显示全部楼层
原帖由 traFFord 于 5-7-2008 06:25 PM 发表 
可以解释清楚你的问题吗? 很想帮你但不懂你要的是什么? 全部要加起来算是什么意思? 比方说第62 小时, 你要的时从第1小时 加到第62 小时吗?
对。。。
就是要从第1小时算到60小时++
但是40小时前的算法不一样,
过了40小时后到60小时之间的也算法不一样,
60小时后的算法也不一样,
要加在一起。。。
我尽量讲清楚一点。。。
1-40小时的算法是,1小时=5块钱。
40-60小时的算法是,1小时=8块钱。
60小时过后,1小时=10块钱。
希望大大能够帮帮忙。。。 |
|
|
|
|
|
|
|
|
|
|
发表于 5-7-2008 06:34 PM
|
显示全部楼层
回复 3# pol 的帖子
public static void main(String[] args) {
int hour = Integer.parseInt(args[0]); // the hour you desired
int wages = 0;
if (hour >= 0 && hour <= 40){
wages = hour * 5;
}else if (hour > 40 && hour <= 60){
wages = ((hour-40) * 8) + 200;
//200 is because the first 40 hour times 5 equals to 200
}else{
wages = ((hour-60) * 10) + 200 + 160;
//200 is first 40 hour, 160 is subsequent 20 hour
}
System.err.println("in hour " + hour + ", the wages is " + wages);
} |
|
|
|
|
|
|
|
|
|
|
发表于 5-7-2008 07:07 PM
|
显示全部楼层
u wan the totall of the working hours?
wages = a+b+c rite?
the way u wan to get 'b' should be like (wages-40)*8,
"c" should be (wages-60)*10, then only can get the correct value.
** i not good in programing, but based on my understanding of ur question, the logic should be like that loh...  |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 5-7-2008 07:22 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
| |
本周最热论坛帖子
|