A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王飞163 中级黑马   /  2014-6-23 21:04  /  1068 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Hi 大家好,
     本人java小白一个,今天23号了,我们公司是加班制的,25号截薪,就在Excel中算了下这个月的薪资。算完后就想了:自己现在在学java,能不能用java自己写一个程序,算算工资呢?
    想着就开始做,先写月工资的计算,然后就想着能不能算1年的呢,能不能算算工作2年的总工资呢?能不能算个工作10的总工资呢,自己学的不是很好,求各路大神给个代码看看。不胜感激!!

需求:假设在公司工作x年,y月,第一年的每月基本工资是z,每年以10%递增,平时加班费每小时为z/172*1,周末加班费每小时为z/172*2,假定加班时间恒定,平时为50小时,周末为40小时。需要求出在公司工作x年y月的总工资。需要手动键盘输入的是  x年   y月  基本工资z。输出所有得到的工资sum。

因才学到毕老师基础课的15day的课程,还没学过输入的,请大神帮。万分感激!

6 个回复

正序浏览
本帖最后由 王飞163 于 2014-6-24 22:10 编辑

还是同样情况,输入后,无显示,求大神指点!

package day15;

import java.util.Scanner;

public class ScannerDemo {

        public static void main(String[] args) {
                Scanner X =new Scanner(System.in);//输入年
                Scanner Y =new Scanner(System.in);//输入月
                Scanner Z =new Scanner(System.in);//输入基本底薪
                System.out.println("请输入工作时间和基本底薪");
                int x=X.nextInt();
                int y=Y.nextInt();
                int z=Z.nextInt();
                int sum=0;
                int sum1=0;
                int sum2=0;
                int c=(int) (z/172*1.5*100+z);//假设加班100小时,都以1.5被工资计算。
               
                if(x>0){
                        for(int a=1;a<=x;x++,c=(int) (c*1.1)){
                                for(int b=1;b<=12;b++){
                                        sum1=sum1+c;
                                        sum2=c*y;
                                }
                        }
                        sum=sum1+sum2;
                        return;
                }
                else{
                        sum=c*y;
                }
                System.out.println(sum);
        }

}
回复 使用道具 举报
刚刚看了下月份设定好像有问题,重新写了下,还是无法输出结果。

package day15;
import java.util.*;
public class ScannerDemo {

        public static void main(String[] args) {
                Scanner x =new Scanner(System.in);//输入年
                Scanner y =new Scanner(System.in);//输入月
                Scanner z =new Scanner(System.in);//输入基本工资
                System.out.println("请输入有一个整数");

                double c=z.nextLong();
                double sum=0,sum1=0;
               
                double d=c/172*1.5*50+c/172*2*40;
                int a=0;
               
                        for( a=0;a<=x.nextInt();a++,c=c*1.1){
                                if(a>=1){
                                        for(int b=0;b<=12;b++){
                                                sum=sum+d*b;
                                        }
                                }
                                else{
                                        for( a=0;a<=x.nextInt();a++,c=c*1.1){
                                                for(int b=0;b<=y.nextInt();b++){
                                                        sum1=sum1+d*b;
                                                }
                                        }
                                }
                }
                       
                System.out.println(sum+sum1);
        }
}
回复 使用道具 举报
截屏所示

工资计算.jpg (134.13 KB, 下载次数: 64)

工资计算.jpg
回复 使用道具 举报
/*
代码写了下,如下面所示,但是输入进去值 好像没有结果,求帮忙解决
*/

import java.util.*;
public class ScannerDemo {

        public static void main(String[] args) {
                Scanner x =new Scanner(System.in);
                Scanner y =new Scanner(System.in);
                Scanner z =new Scanner(System.in);
                System.out.println("请输入有一个整数");

                double c=z.nextLong();
                double sum=0;
                double d=c/172*1.5*50+c/172*2*40;
                for(int a=0;a<=x.nextInt();a++,c=c*1.1){
                        for(int b=0;b<=y.nextInt();b++){
                                sum=sum+d*b;
                        }
                }
                System.out.println(sum);
               

        }

}
回复 使用道具 举报
OK,我试试,感觉还是自己动手的会熟悉点,谢谢指导!
回复 使用道具 举报
输入直接去查IO包,找到方法直接用就行了,懒的找百度也行。
学到15day了,不难做出来,最好自己试一下。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马