Skip to content

Instantly share code, notes, and snippets.

@EntornosDesarrollo
Created June 13, 2016 10:15
Show Gist options
  • Save EntornosDesarrollo/975660ff04d379355aeb7d920f7d60ef to your computer and use it in GitHub Desktop.
Save EntornosDesarrollo/975660ff04d379355aeb7d920f7d60ef to your computer and use it in GitHub Desktop.
Cafetera
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package cafetera;
/**
*
* @author Jose Luis
* @version 1.0
*/
/*
* La clase Cafetera, organizara el funcionamiento de una cafetera, llenando, vaciando
agregando, o sirviendo el café
*
*/
public class Cafetera {
private int capacidadMaxima;
private int cantidadActual;
int taza;
int relleno;
/**
*se aplican los Getters y Setters
*
*/
public double getCapacidadMaxima() {
return capacidadMaxima;
}
public void setCapacidadMaxima(int capacidadMaxima) {
this.capacidadMaxima = capacidadMaxima;
}
public double getCantidadActual() {
return cantidadActual;
}
public void setCantidadActual(int cantidadActual) {
this.cantidadActual = cantidadActual;
}
//se empiezan a declarar los constructores
//se establece la capacidad maxima en 1000 y se inicializa la cantidad actual
public Cafetera (){
capacidadMaxima = 1000;
cantidadActual = 0;
}
//llena la cafetera a la capacidad maxima
public Cafetera (int capacidadMaxima) {
cantidadActual = capacidadMaxima;
}
//contiene la capacidad maxima y la actual, si la actual es superior, la ajusta al maximo
public Cafetera (int capacidadMaxima, int cantidadActual)
{
this.capacidadMaxima = capacidadMaxima;
this.cantidadActual = (cantidadActual > capacidadMaxima) ? capacidadMaxima :
cantidadActual;
/*usamos el operador condicional para que si la cantidad actual supera a la maxima
*la cantidad maxima, sea la actual (adopta el valor)
*/
}
//empezamos a declarar los metodos
public double llenarCafetera(){
cantidadActual=capacidadMaxima;
//la cantidad actual, es llenada a su capacidadMaxima
return cantidadActual;
}
public void servirTaza(int taza){
if (taza > cantidadActual){
vaciarCafetera();
}else
cantidadActual -= taza;
//la cantidad actual menos la taza servida, sera el resultado de cantidadActual
}
public double vaciarCafetera(){
cantidadActual=0;
return cantidadActual;
}
public double agregarCafe(int relleno){
cantidadActual += relleno;
// se le añade a cantidadActual, la cantidad introducida
return cantidadActual;
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package cafetera;
import java.util.Scanner;
/**
*
* @author Jose Luis
* @version 1.0
*/
public class Fraccion {
int numerador;
int denominador;
public int getNumerador() {
return numerador;
}
public void setNumerador(int numerador) {
this.numerador = numerador;
}
public int getDenominador() {
return denominador;
}
public void setDenominador(int denominador) {
this.denominador = denominador;
}
//recibe el numerador y el denominador
public Fraccion(int numerador, int denominador){
this.numerador = numerador;
this.denominador = denominador;
}
//obtiene el numerador y el demoninador y le da un valor
public double modifica() throws IllegalArgumentException {
Scanner sc = new Scanner(System.in);
System.out.println("Por favor introduce el numerador");
numerador = sc.nextInt();
System.out.println("Por favor introduce el denominador");
denominador = sc.nextInt();
return numerador;
}
/*
* Multiplica el numerador y el denominador, por otra fracción en la que meteremos
* el denominador y numerador tambien
*/
public void multiplica( Fraccion f){
this.numerador=numerador;
this.denominador=denominador;
numerador = numerador * f.getNumerador();
denominador = denominador * f.getDenominador();
}
//recibe otra fraccion y la devuelve una representación de ella
public static void caracteres(String[] args) {
int numerador;
int denominador;
Scanner sc = new Scanner(System.in);
System.out.println("Por favor introduce el numerador");
numerador = sc.nextInt();
System.out.println("Por favor introduce el denominador");
denominador = sc.nextInt();
System.out.println("La fraccion representada es " + numerador*2 +"/"+denominador*2);
}}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package cafetera;
/**
* @author Jose Luis
* @version 1.0
*/
/*
La clase Nespresso, hereda de Cafetera y sirve Capsulas de Cafe
*/
public class Nespresso extends Cafetera{
private double cafePorCapsula;
//getters y setters
public double getCafePorCapsula() {
return cafePorCapsula;
}
public void setCafePorCapsula(double cafePorCapsula) {
this.cafePorCapsula = cafePorCapsula;
}
//constructor, que recibe la capacidad Maxima y la cantidad de Cafe de capsula
public Nespresso(int capacidadMaxima, int cafePorCapsula) {
}
public double servirCapsula(int cantidadActual) throws IllegalArgumentException {
if (cafePorCapsula > cantidadActual){
System.err.println("No se puede servir una cantidad de cafe por capsula superior al cafe actual");
}else
cantidadActual -= cafePorCapsula;
//la cantidad actual menos la capsula servida, sera el resultado de cantidadActual
return cantidadActual;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment