0 votos
¿Cómo puedo crear en java una caja registradora y que de cambio? un caja de una tienda con determinados productos.
No tiene que ser muy elaborado.
Gracias
preguntado por Jannet Dic 22, 2014 en Java

1 Respuesta

0 votos
Mejor respuesta

Hola Jannet,
parece que te enfrentas a un problema algorítmica de algoritmos voraces. Busca en Internet “algoritmos voraces”, échale un vistazo, que seguro que te sale enseguida :)

respondido por Jarroba [Admin] Dic 22, 2014

Me dijeron que tengo que hacer un ciclo que se repita 8 veces ( o la cantidad de productos) y crear arreglos para almacenar los nombres y productos y precios. Que para la suma de los precios use el método doubletotalPrecios=IntStram.of(a).sum();

Lo que tengo es lo siguiente:

import java.util.Scanner;
import java.lang.String;
/**
* Write a description of class caja here.
*

*/
public class caja
{
public static void main(String args[])
{
String[] arrayNombresProductos=new String[8];
double[] arrayPreciosProductos=new double[8];

for(int i=0;i<8;i++)
{
System.outprint(“Nombre del producto:”);
arrayNombresProductos[i]=lector.nextLine();
Syste.out.print(“Costo del producto:”);
arrayPreciosProductos[i]=lector.nextDouble();
}
double totalPrecios=IntStream.of(a).sum();
}

}

Cuando compilo me da un error en la siguiente línea 18 ( System.outprint(“Nombre del producto:”);

cannot find symbol method outprint(java.lang.String)

De ahi ya no puedo ver si el resto del código este bien.

El error que comoentas se debe a que has puesto junto la variable static “out” y con el método “print()”. Para que funcione tienes que escribir:

System.out.print(“Nombre del producto:”); //Nótese el punto entre el out y el print

Por otro lado, quieren que utilices el stream de suma de enteros de Java 8 que es simplemente para sumar. Lo puedes utilizar de la siguiente manera:

int totalPrecios = IntStream.of(10, 12, 15).sum();
System.out.println("totalPrecios: " + totalPrecios);
Cuyo resultado es por pantalla es: "totalPrecios: 37"

Ahora al problema. Supongo que tendrás otro array con los productos que quieras comprar y un dinero total a pagar. Tan solo tienes que ir mirando en posición a posición del array que precios tiene cada producto que quieras comprar, e ir sumando a la cantidad a pagar. Al final solo tienes que restar la cantidad a pagar de la que tienes inicial para dar el cambio.

No te doy más pistas porque sino ya te hago el problema, te toca practicar :D