Dúvida com código de erro ; esperado

2 respostas
faviandrade

Boa tarde, por favor, me informem se puderem. Criei este código seguindo a apostila da caelum… e estou colocando um método bonifica, porém ao executar o programa ocorre uma mensagem de erro dizendo que o método espera um ; . O que está errado , é um código bem simples…

código:

class Funcionario {
String nome;

String dpto;

double salario;

String dtentrada;

String rg;

Boolean status;







public void bonifica(double salario){ //bonificará somente se o salário for inferior a 1000,00
	
	if (this.salario < 1000.00){
		this.salario = this.salario * 0.23;
	}else{
		System.out.println("os salário é superior ao estipulado como base, não haverá aumento");
		}
}	

public void demite(boolean status){ 
	this.status = false;
	}

}


class TestaFuncionario{

public static void main (String args []){

Funcionario f1 = new Funcionario();
f1.nome = "Fabio";
	f1.salario = 1200;
	f1.dpto = "T.I";

	f1.bonifica(double salario);

	
	
	System.out.println ("Salario atual é: " + f1.salario);
	
	}

}

2 Respostas

fjvasconcellos

Tenta rodar agora seu cógido com essas modificações

package br.com.vsoftware.teste;

public class Funcionario {

	String nome;
	String dpto;
	double salario;
	String dtentrada;
	String rg;
	Boolean status;

	public void bonifica() { // bonificará somente se o salário for inferior a
								// 1000,00 ps. vc não precisa de parametros no
								// méto, vc já tem o salario dentro da classe
		if (this.salario < 1000.00) {
			this.salario = this.salario * 0.23;
		} else {
			System.out
					.println("os salário é superior ao estipulado como base, não haverá aumento");
		}
	}

	public void demite(boolean status) {
		this.status = false;
	}
}

class TestaFuncionario {

	public static void main(String args[]) {
	
		Funcionario f1 = new Funcionario();

		f1.nome = "Fabio";
		f1.salario = 1200;
		f1.dpto = "T.I";

		f1.bonifica(); // como vc já tem o valor do salário do funcionario 1200,
						// vc nao precisa informar denovo. apenas bonifica-lo

		System.out.println("Salario atual é: " + f1.salario);
	}
}

abraço

faviandrade

Ok, resolvido

só um detalhe, no if… o correto é this.salario += this.salario * 0.23; se quiser que ele… calcule… o valor atual do salário, ou seja… sálario + aumento…

Grato.

Criado 3 de outubro de 2009
Ultima resposta 3 de out. de 2009
Respostas 2
Participantes 2