¿Java!! Soy principiante, programo en el IDE Eclipse. ¿Como hacer un contador o acumulador? 10 PUNTOS 5 ESTRELLAS!?

Estoy haciendo un programa en el cual necesito acumular valores, pero no se como.

En el programa selecionas un producto, el producto tiene cierto precio, digamos 15 dolares.

Necesito que el programa de la opcion de pagar con 1, 2, 5 y 10 dolares.

Si por ejemplo, yo pagara con 2, 2, 1 y 10 ya tendria los 15 dolares acumulados.

En si, que al darle a la opcion de cualquier valor (1, 2, 5 ó 10), me guarde ese valor y al ingresarle otro despues lo sume hasta obtener el precio deseado.

Muchas gracias. 10 PUNTOS 5 ESTRELLAS!

2 respuestas

Calificación
  • hace 6 años
    Respuesta preferida

    import java.util.Scanner;

    public class Tienda {

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    int precio;

    int moneda;

    int saldo=0;//se inicializa para mostrar que no se ha pagado nada este es el contador o acumulador

    Scanner leer=new Scanner(System.in);//scanner para leer el teclado

    System.out.println("Ingrese el precio del producto:");

    precio=leer.nextInt();

    while(precio!=saldo){//condicion para pedir mas moneda ya que hasta que se cuente con un saldo igual al precio dejara de pedir monedas

    System.out.flush();

    System.out.println("Su saldo es: "+saldo+" y su cuenta a pagar es: "+precio);

    System.out.println("ingrese la moneda con la quedesea pagar:");

    System.out.println("1- Moneda de 1 Dolar\n2- Modenda de 2 Dolares\n5- Moneda de 5 dolares\n10- moneda de 10 dolares");

    moneda=leer.nextInt();

    if(moneda==1 || moneda==2 || moneda==5 || moneda==10){//condicion de que ingresa 1 o 2 o 3 o 10

    System.out.println("Se ha depositado "+moneda+" Dolares a su saldo");

    saldo=saldo + moneda;// se aumenta el acumulador con la moneda valida ingresada

    }else{// sin ingresa una cantidad diferente simplemente no aumenta el acumulador

    System.out.println("No se maneja esa denominacion de moneda");

    }

    }

    System.out.println("Se ha pagado la totalidad del producto");//se muestra que ya se pago el producto y se finaliza el programa

    }

    }

  • Anónimo
    hace 6 años

    Básicamente, tienes que hacer la siguiente instrucción:

    Si quieres acumular el total a pagar de todos esos productos, en tu variable total vas a almacenar cada vez que ingrese el precio.

    Entonces cada vez que ingreses el precio, puedes hacerlo de dos formas...

    La primera es la más sencilla de entender:

    total = total+precio;

    Si por ejemplo el total aún no se le ingresa ningún producto, entonces vale 0, pero si agregas un producto que su precio es 15 pesos, con esa instrucción haces esto:

    total = total+precio;

    0 = 0 + 15;

    Por lo tanto, total ahora vale 15. Ahora imagina que quieres agregar un segundo producto, que vale 20 pesos, haces lo mismo:

    total = total+precio;

    15 = 15+20;

    Por lo tanto, total vale 35.

    O de la segunda forma ya "reducida":

    Cualquier operación que quieras hacer, antes de hacer el "=", antepones la operación, por ejemplo:

    total+=precio;

    Básicamente haces la misma instrucción que te expliqué al principio, solo que ya no fue necesario volver a escribir tu variable que vas a ocupar.

    Entonces queda:

    total = total+precio; //Primera forma

    total+=precio; //Segunda forma

    Espero te haya ayudado. Saludos~

¿Aún tienes preguntas? Pregunta ahora para obtener respuestas.