Ver Mensaje Individual
  #2 (permalink)  
Antiguo 11/03/2012, 02:01
Avatar de liloo6retug
liloo6retug
 
Fecha de Ingreso: junio-2010
Ubicación: Marsella
Mensajes: 109
Antigüedad: 13 años, 10 meses
Puntos: 11
Respuesta: Problema de las Jarras No se hacerlo

Bueno pues después de durar como 3 horas dándole a este problema

pude hacerlo... pero sin metodos ya despues tu los puedes arreglar...

cree dos textfield para la captura de datos y un boton para colocarle esos valores a unas variables.. capacidad_a y capacidad_b

las variables que use son:

//A
int capacidad_a = 0;
int nivelagua_a = 0;
int nivelaguadesde_a = 0;
int cantidad_a = 0;

//B
int capacidad_b = 0;
int nivelagua_b = 0;
int nivelaguadesde_b = 0;
int cantidad_b = 0;
//TextArea---Resultado
String dato = "";

hice un boton por cada accion Llenar A, Vaciar A, Pasar a B, Llenar B, Vaciar B, Pasar a A,
y dentro de cada boton coloque lo correspondiente

//llenar A
cantidad_a = capacidad_a;
nivelagua_a = cantidad_a;

//vaciarA
cantidad_a = 0;
nivelagua_a = 0;

//pasaraB
if(nivelagua_b==0)
{
if(capacidad_a<capacidad_b)
nivelaguadesde_a = nivelagua_a;
if(capacidad_a>capacidad_b)
nivelaguadesde_a = capacidad_b;
}
if(nivelagua_b>0)
nivelaguadesde_a = capacidad_b-nivelagua_b;
nivelagua_b = nivelagua_b + nivelaguadesde_a;
cantidad_b = nivelagua_b;
nivelagua_a = nivelagua_a - nivelaguadesde_a;
cantidad_a = nivelagua_a;

para B lo mismo solo tener cuidado con cambiar la respectiva letra

//llenarB
cantidad_b = capacidad_b;
nivelagua_b = cantidad_b;

//vaciarB
cantidad_b = 0;
nivelagua_b = 0;

//pasaraA
if(nivelagua_a==0)
{
if(capacidad_b<capacidad_a)
nivelaguadesde_b = nivelagua_b;
if(capacidad_b>capacidad_a)
nivelaguadesde_b = capacidad_a;
}
if(nivelagua_a>0)
nivelaguadesde_b = capacidad_a-nivelagua_a;
nivelagua_a = nivelagua_a + nivelaguadesde_b;
cantidad_a = nivelagua_a;
nivelagua_b = nivelagua_b - nivelaguadesde_b;
cantidad_b = nivelagua_b;

probe colocando los valores A 5 B 7 (llenando a B) y A7 B5 (llenando a A) mm se supone que es usando el de menor capacidad

el resultado lo iba mostrando en un textarea asi:

A: 0 B: 5 A: 5 B: 0 A: 5 B: 5 A: 7 B: 3 A: 0 B: 3 A: 3 B: 0 A: 3 B: 5 A: 7 B: 1

en cada boton puse
dato = jta_proc.getText();
jta_proc.setText(" "+dato+" A: "+cantidad_a+" B: "+cantidad_b+" ");


y claro una funcion limpiar llamada desde un boton para probar el programita con otros datos

jTextField1.setText("");
jTextField2.setText("");
jta_proc.setText("");
//A
capacidad_a = 0;
nivelagua_a = 0;
nivelaguadesde_a = 0;
cantidad_a = 0;
//B
capacidad_b = 0;
nivelagua_b = 0;
nivelaguadesde_b = 0;
cantidad_b = 0;


de todos modos funciona.. es algo que puede ser sencillo para unos jejej pero no se atrevieron a hacerlo.. si puedes quitar cosas que sobren te agradezco... entre cosas de sueño-- creo que lo explique bien... son las 3am-- luego me conecto a despejar dudas...