es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo concatenar 2 métodos juntos?

Soy un traductor de español que traduce documentos de TI. Traduzca lo siguiente al español. No traduzca el código y la salida en markdown.

Pregunta:

Soy muy nuevo en Java y estoy tratando de aprender lo mejor que puedo. La pregunta real del problema que estoy tratando de resolver se encuentra en la imagen de arriba. Por favor, consulte la imagen en caso de que no sea lo suficientemente detallado en la descripción de mi problema. Actualmente estoy escribiendo un programa en Java que tiene que ver con la compra de café. Tengo un método que calcula el costo de comprar el café (ComprarCafé) y la cantidad de recursos utilizados. También hay diferentes tipos de café, cada uno usando diferentes cantidades de recursos. También tengo otro método que calcula los recursos restantes después de que se haya vendido cualquier café (getRemainingResources). Tengo un problema para hacer un bucle en mi método getRemainingResources. Así que cuando compro café una vez, la cantidad de recursos que tengo disminuye. Tengo un método para rellenar estos recursos. Pero cada vez que intento comprar el mismo café de nuevo, la cantidad de recursos que me queda no disminuye. Mi código está abajo

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    El problema principal en el código proporcionado es que el método getRemainingResources() sólo se ejecuta una vez porque la variable found del bucle while no se actualiza dentro del bucle.

    Para solucionar esto, debemos actualizar la variable found dentro del bucle en función de alguna condición. En este caso, podemos establecer found en false cuando el número de tazas desechables remDisposableCups se vuelva menor o igual a 0. Esto saldrá del bucle y volverá al menú principal.

    El código actualizado para el método getRemainingResources() se muestra a continuación:

    static void getRemainingResources() {
        boolean found = true;
    
        while (found) {
            remDisposableCups = fillDisposableCups + disposableCups;
    
            remWater = water + fillWater - espressoWater - cappuccinoWater - latteWater;
            remMilk = milk + fillMilk - espressoMilk - cappuccinoMilk - latteMilk;
            remCoffeeBean = coffeeBean + fillCoffeeBeans - espressoCoffeeBeans - cappuccinoCoffeeBeans - latteCoffeeBeans;
            remCost = cost + espressoCost + cappuccinoCost + latteCost - newRemCost;
    
            System.out.println("La cafetera tiene:");
            System.out.println(remWater + " ml de agua");
            System.out.println(remMilk + " ml de leche");
            System.out.println(remCoffeeBean + " g de granos de café");
            System.out.println(remDisposableCups + " tazas desechables");
            System.out.println("$" + remCost + " de dinero");
    
            if (remDisposableCups <= 0) {
                found = false;
            }
        }
    
        MainMenu();
    }
    

    Con este cambio, el método getRemainingResources() ahora se ejecutará correctamente y mostrará los valores actualizados de los recursos después de cada compra de café.

Comments are closed.