Classe Copo

5 respostas
van_bommel
/*5) Escreva uma classe Copo. Esta classe tem o atributo capacidade que corresponde à
quantidade de líquido que pode ser colocado no copo (em mililitros). Escreva os métodos:
construtor, de acesso, modificador e o método calculaNumeroDeCopos(). O construtor
inicia o atributo capacidade com um valor fornecido por parâmetro. O método
calculaNumeroDeCopos() recebe um valor em litros (por parâmetro) e retorna a
quantidade de copos necessária para armazenar toda a água. Dado: 1 litro = 1000
mililitros.
*/

    public class Copo{
   
      private int capacidade ;
   
       public Copo (int capacidade ){
      
         this.capacidade = capacidade ;
      
      
      }
       public int getCapacidade () {
         return capacidade;
      
      }
       public void setCapacidade (){
      
         this.capacidade = capacidade ;
      }
   
   
       public int  calculaNumeroDeCopos(int valorEmLitros){
         int ml = 1000;
         int total = ml * valorEmLitros;
         int quantidade = 1;
         int cont = getCapacidade ();
         total = ml* valorEmLitros;
         while ( total > cont ){
            cont = cont + getCapacidade() ;
            quantidade = quantidade + 1 ;
         
         }
      
         return quantidade;
      
      
      
      }
   
   
   
   }

Opa garelaaa, estou começando em java é a melhor forma de fazer usei muitas variáveis ;s
abraaçoo

5 Respostas

hiram
public class Copo {
	private int capacidade;
	
	public Copo(int capacidade) {
		this.setCapacidade(capacidade);
	}

	// Ok, mas mudar a capacidade de um copo depois de criado? :-P
	private void setCapacidade(int capacidade) {
		this.capacidade = capacidade;
	}

	public int getCapacidade() {
		return this.capacidade;
	}

	// EDIT: Deveras. Volume é em litros.
	public int calcularNumCopos(float volume) {
		return (int) Math.ceil(volume * 1000 / capacidade);
	}
}
luciano.eti
5) Escreva uma classe Copo. Esta classe tem o atributo capacidade que corresponde à quantidade de líquido que pode ser colocado no copo (em mililitros). Escreva os métodos: construtor, de acesso, modificador e o método calculaNumeroDeCopos(). O construtor inicia o atributo capacidade com um valor fornecido por parâmetro. O método calculaNumeroDeCopos() recebe um valor em litros (por parâmetro) e retorna a quantidade de copos necessária para armazenar toda a água. Dado: 1 litro = 1000 mililitros.
uma outra sugestão...
import java.io.PrintStream;

public class Copo {

	private double capacidade;

	public Copo(double capacidade) {
		this.capacidade = capacidade;
	}

	// Realmente acho estranho alterar a capacidade.
	public double getCapacidade() {
		return capacidade;
	}

	public double calculaNumeroDeCopos(double litros) {
		return ((litros * 1000) / getCapacidade());
	}

	public static void main(String[] args) {

		// Copo construído com capacidade de 500 ml.
		Copo copo = new Copo(500);
		PrintStream monitorExibe = System.out;

		// Valor fornecido em litros: 1 litro.
		monitorExibe.println("Quantidade de copos: "
				+ copo.calculaNumeroDeCopos(1.0));
	}
}
> Quantidade de copos: 2.0
[]'s

Luciano

O
van bommel:
public int  calculaNumeroDeCopos(int valorEmLitros){
         int ml = 1000;
         int total = ml * valorEmLitros;
         int quantidade = 1;
         int cont = getCapacidade ();
         total = ml* valorEmLitros;
         while ( total > cont ){
            cont = cont + getCapacidade() ;
            quantidade = quantidade + 1 ;
         
         }
         return quantidade;
      }
   }
luciano.eti:
public double calculaNumeroDeCopos(double litros) {  
        return ((litros * 1000) / getCapacidade());  
    }
Não sei se você percebeu, mas acabou fazendo uma demonstração de como reduzir uma divisão a uma soma. Você daria um programador assembly. :wink:
van_bommel

valew pelas dicas

Allan_BSO

Van bommel,
Fica esperto com a seguinte situação: se o resultado da operação for, por exemplo: 2,3 (volume* 1000 / capacidade), nesse caso o resultado que deve ser retornado é 3(arrendodamento para um inteiro, mas não menor que o resultado).

Para tanto, deve-se usar a instrução que foi citada acima.

Math.ceil

Abraços.

:wink:

Criado 28 de junho de 2009
Ultima resposta 28 de jun. de 2009
Respostas 5
Participantes 5