Ajuda com exercício do Java como programar 6

3 respostas
ucastrobr

Estou fazendo um exercício que a saída deve informar o nome, o sobrenome, salário, salário anual e mais um aumento de 10% sobre o salário.
Mas quando executo o aumento e o salário anual não sae.

Saída:
ulycris@ulycris:~/licãoDeiteil/Deitel6/Empregado$ java EmpregadoTeste
Digite o nome do funcionário Roberto
Digite o sobrenome do funcionário Carlos
Digite o salário 1345,23

Nome do funcionário..:RobertoCarlos
Seu salário é..:1345,23
O que gera por ano..:[color=darkred]0,00[/color]
Aumento 10 por cento salário..:[color=darkred]0,00[/color]

O EmpregadoTeste:
import java.util.Scanner;
public class EmpregadoTeste {

  public static void main (String [ ] args) {
    Scanner input = new Scanner(System.in);
    Empregado novoEmpregado = new Empregado("","",0.00,0.00,0.00);
    
    System.out.print(" Digite o nome do funcionário ");
    String name = input.nextLine();
    novoEmpregado.setNome(name);
    
    System.out.print(" Digite o sobrenome do funcionário ");
    String apelido = input.nextLine( );
    novoEmpregado.setSobrenome(apelido);
    
    System.out.print(" Digite o salário ");
    double rendaMensal = input.nextDouble( );
    novoEmpregado.setSalario(rendaMensal);
    
    
    novoEmpregado.Imprime();
	}
    }
A classe Empregado:
/* Programa por
Ulysses de Castro
*/
public class Empregado {
private String nome, sobrenome;
private double salario;
private double salarioanual;
private double bonifica;

public Empregado (String nome, String sobrenome,
double salario, double salarioanual, double bonifica) {
this.nome = nome;
this.sobrenome= sobrenome;
this.salario = salario;
this.salarioanual = salarioanual;
this.bonifica = bonifica;
}

public void setNome(String nome){
this.nome = nome;
}

public String getNome( ) {
return this.nome;
}

public void setSobrenome(String sobrenome) {
this.sobrenome = sobrenome;
}

public String getSobrenome( ) {
return this.sobrenome;
}

public void setSalario(double salario) {
if (salario < 0.00)
salario = 0.00;
this.salario = salario;
}

public double getSalario( ) {
return this.salario;
}

public void setSalarioAnual(double salarioanual) {
salarioanual = salario*12;
this.salarioanual = salarioanual;
}

public double getSalarioAnual( ){
return this.salarioanual;
}

public void bonifica(double bonifica) {
bonifica = salario*(10/100)+salario;
this.bonifica = bonifica;
}

public double Bonifica( ) {
return this.bonifica;
    }
public void Imprime() {
System.out.println();
System.out.printf(" Nome do funcionário..:%s",this.getNome()); 
System.out.printf(this.getSobrenome());
System.out.println();
System.out.printf(" Seu salário é..:%.2f\n",this.getSalario());
System.out.printf(" O que gera por ano..:%.2f\n",this.getSalarioAnual());
System.out.printf(" Aumento 10 por cento salário..:%.2f/n/n",this.Bonifica());
    }
}

Eu sei que o erro está no método setSalario e bonifica mas como fazer a expressão corretamente.

3 Respostas

Fhreitas

[color=#444444] [/color]vou copiar seu codigo e ver o que pode ser feito nele… só peço um pouco de paciencia. blz?

Cobracan

Sua classe empregado pode ficar assim:

package quintoCapitulo;

public class Empregado {

private String nome; 
private String sobrenome;
private double salario;


public Empregado(String nome, String sobrenome, double salario){
		
	this.nome = nome;
	this.sobrenome = sobrenome;
	this.salario = salario;

}

public void setNome(String nome) {
	this.nome = nome;
}

public String getNome() {
	return this.nome;
}

public void setSobrenome(String sobrenome) {
	this.sobrenome = sobrenome;
}

public String getSobrenome() {
	return this.sobrenome;
}

public void setSalario(double salario) {
	if (salario <= 0.00)
		salario = 0.00;
	this.salario = salario;		
}

public double getSalario() {
	return this.salario;
}


public void Imprime() {
	System.out.println();
	System.out.printf(" Nome do funcionário..:%s", this.getNome());
	System.out.printf(this.getSobrenome());
	System.out.println();
	System.out.printf(" Seu salário é..:%.2f\n", this.getSalario());
	System.out.printf(" O que gera por ano..:%.2f\n", this.getSalario() * 12);
	System.out.printf(" Aumento 10 por cento salário..:%.2f\n\n", this.getSalario() * 0.1);
}

}

ucastrobr

Obrigado pela ajuda Cobracan você simplificou a resolução do exercício e funcionou.

Quanto ao Fhreitas se tiver resolvido posta aí como você conseguiu, afinal o importante é aprender vários métodos de resolver um problema.

Obrigado a todos!

Vale lembrar que no site http://falandodejava.wordpress.com/exercicios-do-livro/ nosso amigo Henrique H. da Silva tem vários exercícios resolvidos do livro Java Como Programar 6. Só que eu sempre procuro fazer diferente do método que ele usa para aprender.

Criado 24 de agosto de 2008
Ultima resposta 24 de ago. de 2008
Respostas 3
Participantes 3