Ajuda! a emplementar programa em java!

9 respostas
L

Classe Carro

  • Ano
  • Marca
  • Pneus - 2 Dianteiros
    - 2 trazeiros

O carro>> Andar(Km)

O carro >>Revisar
Se a calibragem estiver abaixo
abaixo de 17 libras
informar que esta calibrando e colocar a
quantidade necessária para atingir a calibragem padrão

Classe Pneu
Atributos
CalibragemAtual
Calibragem Padrão
Tipo(Dianteiro ou trazeiro)

Se o ano do carro for acima de 2005
Para cada 100Km rodados diminui
1 Libra Pneus dianteiros
0.5 " " trazeiros

Se o ano do carro for abaixo ou igual 2005
Para cada 100 Km rodados diminui
1,5 Libra Pneus Dianteiros
1 " " trazeiros

Principal
Instanciar Carros
Andar
Revisar

9 Respostas

L

Classe Pneu

public class Pneu {

private double calibragemAtual, calibragemPadrao;

private char tipoPneu;
public Pneu(){
	calibragemAtual=0.0;
	calibragemPadrao=0.0;
	tipoPneu=1;
}
public Pneu(double calibragemAtual, double calibragemPadrao, String Tipo){
	this.calibragemAtual=calibragemAtual;
	this.calibragemPadrao=calibragemPadrao;
	this.tipoPneu=tipoPneu;
}


public double getCalibragemAtual() {
	return calibragemAtual;
}
public void setCalibragemAtual(double calibragemAtual) {
	this.calibragemAtual = calibragemAtual;
}
public double getCalibragemPadrao() {
	return calibragemPadrao;
}
public void setCalibragemPadrao(double calibragemPadrao) {
	this.calibragemPadrao = calibragemPadrao;
}
public char getTipoPneu() {
	return tipoPneu;
}
public void setTipoPneu(char tipoPneu) {
	this.tipoPneu = tipoPneu;
}

}

L

Não to conseguindo bolar a classe Carro
queria uma ajudaa se possivel ;s
sou um pouco leigo em java!! estou aprendendo ainda!!

ecarrara

Num tá completo,as dá pra ter uma idéia!

Abraços e boa sorte

public class Carro
{
  public static final double CALIBRAGEM_PADRAO = 17.0;
  private int iAno;
  private String strMarca;
  private Pneu pneuDD;
  private Pneu pneuDE;
  private Pneu pneuTD;
  private Pneu pneuTE;
  
  private int kmAtual;
  
  public Carro(int ano, String marca)
  {
    this.kmAtual = 0;
    this.iAno = ano;
    this.strMarca = marca;
    this.pneuDD = new Pneu(CALIBRAGEM_PADRAO,CALIBRAGEM_PADRAO,'a'); 
    this.pneuDE = new Pneu(CALIBRAGEM_PADRAO,CALIBRAGEM_PADRAO,'a');
    this.pneuTD = new Pneu(CALIBRAGEM_PADRAO,CALIBRAGEM_PADRAO,'a');
    this.pneuTE = new Pneu(CALIBRAGEM_PADRAO,CALIBRAGEM_PADRAO,'a');
  }
  
  public void andar(int distancia)
  {
    this.kmAtual += distancia;
  }
  
  public void revisar()
  {
    if(pneuDD.getCalibragemAtual() < CALIBRAGEM_PADRAO)
    {
      System.out.println("Calibrando pneu dianteiro direito...");
      double diff = CALIBRAGEM_PADRAO - pneuDD.getCalibragemAtual();
      pneuDD.calibrar(diff);
      System.out.println("Pneu dianteiro direito calibrado.");
    }
    if(pneuDE.getCalibragemAtual() < CALIBRAGEM_PADRAO)
    {
      System.out.println("Calibrando pneu dianteiro esquerdo...");
      double diff = CALIBRAGEM_PADRAO - pneuDE.getCalibragemAtual();
      pneuDE.calibrar(diff);
      System.out.println("Pneu dianteiro esquerdo calibrado.");
    }
    if(pneuTD.getCalibragemAtual() < CALIBRAGEM_PADRAO)
    {
      System.out.println("Calibrando pneu traseiro direito...");
      double diff = CALIBRAGEM_PADRAO - pneuTD.getCalibragemAtual();
      pneuTD.calibrar(diff);
      System.out.println("Pneu traseiro direito calibrado.");
    }
    if(pneuTE.getCalibragemAtual() < CALIBRAGEM_PADRAO)
    {
      System.out.println("Calibrando pneu traseiro esquerdo...");
      double diff = CALIBRAGEM_PADRAO - pneuTE.getCalibragemAtual();
      pneuTE.calibrar(diff);
      System.out.println("Pneu dianteiro traseiro esquerdo.");
    }
  }   
}
L
cara, valeu mais me explica uma coisinhaa

pq esta dando erro no

pneuDD.calibrar(diff);

pneuDE.calibrar(diff);

pneuTD.calibrar(diff);

pneuTE.calibrar(diff);

ta dando erro no calibrar…

ecarrara

Provavelmente é pq a função calibrar não foi definida na classe Pneu.
Como eu disse foi só pra ter uma idéia, não está tudo redondo. 8)

Você pode definir o método calibrar na classe Pneu:

public void calibrar(double valor)
{
}

Faz isso e verifica se o erro desaparece.
Na próxima posta o erro junto que facilita. :wink:

Abraço

L

sim, bem isso q eu fiz, mais eu nao sabia se tinha q por algo dentro desse método vlw
vo tentar resolver o restoo…

B

A responsabilidade da calibragem padrão deveria ficar com os Pneus, não com o Carro.

public class Carro
{
  private int ano;
  private String marca;
  private Pneu[] pneus = new Pneu[4];
  
  private int kmAtual;
  
  public Carro(int ano, String marca)
  {
     this.kmAtual = 0;
     this.ano = ano;
     this.marca = marca;
     for (Pneu pneu: pneus)
       pneu = new Pneu("Bridgestone");
  }
  
  public void andar(int distancia)
  {
     this.kmAtual += distancia;
  }
  
  public void revisar()
  {
     for (Pneu pneu: pneus)
       pneu.calibrar();
  }   
}

public class Pneu {

  private final double CALIBRAGEM_PADRAO = 17;
  private String tipoPneu;

  private double calibragemAtual;

  public Pneu(String tipoPneu) {
    this.tipoPneu = tipoPneu;
    this.calibragemAtual = CALIBRAGEM_PADRAO;
  }

  public void calibrar() {
    this.calibragemAtual = CALIBRAGEM_PADRAO;
  }

  public void calibrar(double calibragem) {
    if (calibragem > CALIBRAGEM_PADRAO * 1.10) // tolerancia de 10%
      throw new PneuEstouradoException();

    this.calibragemAtual = calibragem;
  }
}
J

Boa tarde galera
to precisandode uma força
to querendo criar um programa com laço for com apenas um botao na tela ( botão desativar)
que conte de 1 a 20
so que do 1 ao 5 o botão vai ficar habilitado
do 6 ao 15 ele vai desabilitar e do 16 ao vinte ele reabilita
o botão tem a função de para a execução
os numeros precisam de um tempo ( time ) de mais ou menos
2 segundos de um para o outro
este programa e um trabalho que eu não estou dando conta de colocar o
tempo e nem o botão para a execução

por favor alguem da uma força
grato

L

galera ajudaa a CHAMAR os MÈTODOS NA CLASSE PRINCIPAL
não estou conseguindo!!=[[[[

Criado 20 de março de 2009
Ultima resposta 21 de mar. de 2009
Respostas 9
Participantes 4