Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Problema 3
Problema 3
Consideraciones:
Lo he trabajo con POO y considero viable crear una clase Producto, ya que posteriormente
se podría agregar más atributos según la situación.
El programa se centra y se realiza en la Clase Tienda, donde se encuentran todos los
métodos indicados en ele ejercicio y algunas cosas extras para mejorar el programa.
La clase DemoTienda es donde instancia un objeto de la clase Tienda, además contiene un
menú interactivo de opciones.
Clase Producto
import java.util.*;
//atributos
//constructores
public Tienda() {
agregarMeses();
productosDefault();
this.nombre=nombre;
agregarMeses();
productosDefault();
//metodos accesores
return nombre;
this.nombre = nombre;
this.productos = productos;
return registroMeses;
this.registroMeses = registroMeses;
return contador;
this.contador = contador;
registroMeses.put("enero", 0.0);
registroMeses.put("febrero", 0.0);
registroMeses.put("marzo", 0.0);
registroMeses.put("abril", 0.0);
registroMeses.put("mayo", 0.0);
registroMeses.put("junio", 0.0);
registroMeses.put("julio", 0.0);
registroMeses.put("agosto", 0.0);
registroMeses.put("septiembre", 0.0);
registroMeses.put("octubre", 0.0);
registroMeses.put("noviembre", 0.0);
registroMeses.put("diciembre", 0.0);
productos.put("tallarines",new Producto("tallarines",2));
productos.put("chicle",new Producto("chicle",0.10));
if(contador<100) {
String nombre=entrada.nextLine().toLowerCase();
if(productos.containsKey(nombre)) {
else {
else {
}
}
mostrar+=productos.get(key).toString();
System.out.println(mostrar);
int maxIdx=0;
int minIdx=0;
String claveMax="";
String claveMin="";
int i=0;
while(i<12) {
cifras[i]=registroMeses.get(key);
mes[i]=key;
i++;
for(int j=1;j<cifras.length;j++) {
if(cifras[j]<cifras[minIdx]) {
minIdx=j;
}
else if(cifras[j]>cifras[maxIdx]) {
maxIdx=j;
claveMax=mes[maxIdx];
claveMin=mes[minIdx];
if(registroMeses.get(key)== registroMeses.get(claveMax)) {
if(registroMeses.get(key)== registroMeses.get(claveMin)) {
System.out.println(cadena1+cadena2);
//estadisticas ganancias
System.out.println(cadena);
String mes=entrada.nextLine().toLowerCase();
if(registroMeses.containsKey(mes)) {
String decision="si";
while(decision.equals("si")) {
System.out.println("Opciones:"+"\n"+
entrada.nextLine();
switch(eleccion) {
case 1:
String producto=entrada.nextLine().toLowerCase();
if(productos.containsKey(producto)) {
registroMeses.put(mes, registroMeses.get(mes)
+productos.get(producto).getPrecio());
else {
break;
case 2: decision="no";
break;
default: System.out.println("Eleccion incorrecta");
else {
if(productos.containsKey(producto)) {
System.out.println("Producto: "+productos.get(producto).getNombre()
+"\t"+
"Precio:
"+productos.get(producto).getPrecio());
productos.get(producto).setPrecio(newPrecio);
else {
}
Clase DemoTienda
import java.util.*;
import javax.swing.*;
String decision="si";
int eleccion;
while(decision.equals("si")) {
System.out.println("Opciones: "+"\n"+
eleccion= entrada.nextInt();
switch(eleccion) {
case 1: tienda.agregarProductos();
break;
case 2: tienda.realizarVenta();
break;
case 3:tienda.mostrarProductos();
break;
case 4:tienda.cifrasMeses();
break;
case 5:tienda.cifrasMayoresMenoresMeses();
break;
case 6:
tienda.modificarProducto();
break;
case 7:
decision="no";
break;