0

Please help me!
My program does not work
1-I have problem wihte constructors parameters
2-I have problem whit toString methode.

User writes(from keyboard): workers name, hourPayment,
and time(how many hours he has worked, first week, second week....).

The out put is like this:

his(name) salary is.....$ for first  week
his(name) salary is.....$ for second week
his overtime is.....hours.
his(name) salary is.....$ for third  week
// we should write  while(time!=0)
If the user writes Zero(0);
the program computes totalOverTime and total salary
and prints out also workers name and hourPayment.
pree any key to continue....

------------------------------------------------------

class mySalary{
public static void main(String[]args){
System.out.print("write name:");


Salary ans= new Salary();
String name=Input.readString();


System.out.print("write hourPayment");
double hourPayment=Input.readInt();
ans.getHourPayment();



System.out.print("Write"+name+" "+"houre for first week");
int f=Input.readInt();


double count1=ans.compute(f);
System.out.println(name+"salary for first week is:"+" "+count1);
System.out.println();


System.out.print("Write"+name+" "+"houre for secound week");
int f2=Input.readInt();
double count2=ans.compute(f2);


System.out.println(name+"salary for second week is:"+" "+count2);}}
System.out.println();
//--------------------------------------------
class Salary{
private String name;
private double hourPayment;
private int .....;
private double totaltOvertim;
private double ....;


public Salary(String name, double hourPayment, int ...,int totaltOvertim){this.name= name;
this.hourPayment=hourPayment;
this.;
this.totaltOvertim=totaltOvertim;}
public String getNamn(){
return name;}
public double getHourPayment(){
return hourPayment;}
public double compute(int time){
// he has worked less than 40 hours
if(time<=40){
salary=hourPayment*time;
System.out.println(salary);}
else if(time>40){
//it is just a formula for over time.
overTidsPayment=(((40*hourPayment)+(time-40)*(3/2)*hourPayment));
salary=salary+overTidsPayment;
System.out.println("????"+(salary));
}
else if(time>70){
// If he works 30 hours over time he gets warning.
double overTidsPayment=(((40*hourPayment)+(time-40)*(3/2)*hourPayment));
salary=salary+overTidsPayment;
System.out.println("????"+(salary));
System.out.println("WARNING: You have worked more than 70(40+30) hour");
}
return salary;
}
public String toString(){
return......????

Edited by happygeek: fixed formatting

2
Contributors
1
Reply
2
Views
13 Years
Discussion Span
Last Post by jerbo
0

One thing that I can think of. If you declare a constructor with parameters (and overloaded constructor,) like you did above, you also need to declare the default constructor (with no parameters.)

public Salary() {
// Default init process
}

If not then your compiler will complain.

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.